Skip to main content

Full text of "Kilobaud 1980 10"

See other formats



PHOI*' 1 ' 


debts 


YOUR 

family 


inherit^ 

taxes 


74470 65945 


Will Fate Shortchange 
Your Family’s Future? 

Computerize Your Estate Planning. Pg. 31 


A Few Extraordinary Products for Your 6800/6809 Computer 


SS-50 Bus LFD-400 " and LFD-800 * Systems 


From Percom . . . 



Low Cost 
Mini-Disk Storage 
in the Size You Want 


Percom mini-disk systems start as 
low as $599.95, ready to plug in and 
run. You can’t get better quality or a 
broader selection of disk software 
from any other microcomputer disk 
system manufacturer — at any price ! 

Features: 1-, 2- and 3-drive systems 
in 40- and 77- track versions store 
102K- to 591K-bytes of random ac- 
cess data on-line • controllers in- 
clude explicit clock/data separation 
circuit, motor inactivity time-out cir- 


cuit, buffered control lines and other 
mature design concepts • ROM 
DOS included with SS-50 bus ver- 
sion — optional DOSs for EXOR- 
ciser* bus • extra PROM sockets 
on-board • EXORciser* bus version 
has 1 K-byte RAM • supported by ex- 
tended disk operating systems; as- 
semblers and other program de- 
velopment/debugging aids; BASIC, 

FORTRAN, Pascal and SPL/M lan- 
guages; and, business application 
programs. EXORciser * Bus LFD-400EX™ -800EX™ Systems 



The SBC/ 9 ™. A “ 10 ” By Any Measure. ^13 

The Percom SBC/9™ is an SS-50 bus compatible, stand- 
alone Single-Board Computer. Configured for the 6809 
microprocessor, the SBC/9™ also accommodates a 6802 
without any modification. You can have state-of-the-art 
capability of the ’09. Or put to work the enormous selection of 
6800-coded programs that run on the ’02. 

The SBC/9™ includes PSYMON™, an easily extended 1- 
Kbyte ROM OS. Other features include: 

• Total compatibility with the SS-50 bus. Requires no changes to the 
motherboard, memory or I/O. 

• Serial port includes bit-rate generator. RS-232-C compatible with 
optional subminiature ‘D’ connector installed. 10-pin Molex connec- 
tor provided. 

• Eight-bit, non-latched, bidirectional parallel port is multi-address 
extension of system bus. Spans a 30-address field; accommodates 
an exceptional variety of peripheral devices. Connector is optional. 

• Includes 1 -Kbyte of static RAM. 

• Costs only $199.95 with PSYMON™ and comprehensive users 
manual that includes source listing of PSYMON™. 


™ trademark of Percom Data Company, Inc. 

• trademark of the Motorola Corporation. 

Prices and specifications subject to change without notice. 


Versatile Mother Board, Full-Feature Prototyping Boards ^15 

Printed wiring is easily soldered tin-lead plugged into an SS-50 bus. Features 
plating. Substrates are glass-epoxy. Pro- wide-trace conductors. Price: $21.95 
totyping cards provide for power regula- SS-50 BUS CARD — accommodates 34- 
tors and distributed capacitor bypassing, and 50-pin ribbon connectors on top 
accommodate 14-, 16-, 24- and 40-pin edge, 10*pin Molex connector on side 
DIP sockets. Prototyping boards include edge. Price: $24.95. 
bus connectors, other connectors and SS-30 BUS CARD — 1 Winch higher 
sockets are optional. than SWTP I/O card, accommodates 34- 

MOTHERBOARD — accommodates five pin ribbon connector and 12-pin Molex 
SS-50 bus cards, and may itself be connector on top edge. Price: $14.95. 


The Electric Window™: Instant, Real-Time Video Display Control ^ie 



Memory residency and outstanding software control of display format and 
characters make this SS-50 bus VDC card an exceptional value at only $249.95. 
Other features. 

• Generates 128 charac- 
ters including all ASCII dis- 
playable characters plus 
selected Greek letters and 
other special symbols. 

• Well-formed, easy-to- 
read 7x12-dot characters. 

True baseline descenders. 

• Character-store (display) 
memory included on card. 

• Provision for optional 
character generator 
EPROM for user defined 
symbols. 

• Comprehensive users 
manual includes source 
listing of Driver software. 

Driver — called WINDEX™ 

— is also available on mini- 
diskette through the Per- 
com Users Group. 



PERCOM DATA COMPANY. INC. 

211 N. KIRBY GARLAND. TEXAS 75042 
(214) 272-3421 


Products are available at Percom dealers nationwide. Call toll-free, 
1-800-527-1592, for the address of your nearest dealer, or to 
order direct. 




In late 1978, Intertec conceived the idea 
of the InterTube Video Display Terminal. 

Since that time, we’ve greatly enhanced its 
operation with the addition of many new 
exciting features. But perhaps the most sig- 
nificant announcement in the InterTube line of 
video terminals is our new InterTube III. 

The new $895* InterTube III obsoletes 
dumb terminals and out-performs the smart 
ones. Powerful standard features include: 
a full 24 line by 80 character display, 128 
upper and lower case ASCII characters, 
reverse video, complete cursor addressing 
and control, an 18 key numeric pad, user- 
defined function keys, blinking, a self-test 
mode, protected and unprotected fields, 
below-the-line descenders, automatic key 
repeat, twin RS232 serial ports and character 
and line insert/delete. Incredible! 


InterTube III also boasts newly designed 
processor, video and power supply circuits. 

All in all, the InterTube III is what we believe 
to be the most powerful, reliable video termi- 
nal available today. And it costs less than its 
predecessor - our popular InterTube II. 

InterTube III users will appreciate the 
many painstaking hours of human engineering 
which insure effortless operation without 
operator fatigue. InterTube Ill’s new high 
resolution, non-glare CRT provides the 
sharpest possible display image. And our 
newly designed keyboard has that expensive 
“feel” you normally find only on terminals 
costing two to three times as much. But, 
most importantly, the InterTube III features 
state-of-the art design with just three easily 
removable modules. So, with only a common 
screwdriver, servicing is a snap! 


Better yet, weVe got a nationwide serv- 
ice network with outlets located in over 50 
cities to provide fast and efficient on-site or 
depot maintenance. Plus, an extended 
warranty program is also available. 

If you’re an existing InterTube user, you 
no doubt have discovered the exceptional value 
the InterTube really is. And, if you’re not, why 
not call or write us today for the name and 
address of your nearest InterTube III dealer. 
Intertec video terminals are distributed world- 
wide and may be available in your area now. 



SINTETOC 

DATA 

^SYSTEMS. 


2300 Broad River Rd, Columbia, SC 29210 
(803) 798-9100 TWX: 810-666-2115 


'Quantity One - Dealer inquiries invited. 





Digital IC Probe & Logic Pulser 


PRB- 1 DIGITAL LOGIC PROBE 

Compatible with DTL, TTL CMOS, MOS and Microprocessors using a 4 to 15V power supply. Thresholds automatically 
programmed. Automatic resetting memory. No adjustment required. Visual indication of logic levels, using LED’s to 
show high, low, bad level or open circuit logic and pulses. Highly sophisticated, shirt pocket portable (protective tip 
cap and removable coil cord). 

Automatic threshold resetting • DE to > 60 MHZ 
Compatible with all logic families 4-15 VDC • lONsec. pulse response 
Supply O.V.P. to ±70 VDC • 120 K H impedance 
No switches/no calibration • Automatic pulse stretching to 50 Msec. 

Open circuit detection • Automatic resetting memory 
Range extended to 16-25 VDC with optional PA-1 adapter 
PLS-1 LOGIC PULSER 

The PLS- 1 logic pulser will superimpose a dynamic pulse train ( 20 pps) or a single pulse onto the circuit node under 
test. There is no need to unsolder pins or cut printed-circuit traces even when these nodes are being clamped by digital 
outputs. 

PLS- 1 is a multi-mode, high current pulse generator packaged in a hand-held shirt pocket portable instrument. It can 
source or sink sufficient current to force saturated output transistors in digital circuits into the opposite logic state. 
Signal injection is by means of a pushbutton switch near the probe tip. When the button is depressed, a single 
high-going or low-going pulse of 2 /jl sec wide is delivered to the circuit node under test. Pulse polarity is automatic: 
high nodes are pulsed low and low nodes are pulsedhigh . Holding the button down delivers a series of pulses of 20 pps 
to the circuit under test. 

High input impedance(off state) 1 meg ohm • Multi mode-single pulses or pulse trains 
Low output impedance (active state) 2 ohms • Automatic polarity sensing 

Output pulse width 2 nsec nominal • Automatic cun ent limiting; 7 amps nominal 
Input over voltage protection +50 volts • Automatically programmed output level 
Finger tip push button actuated • Circuit powerec 
Power lead reversal protection • No adjustments required 
Multi-family RTL, DTL, TTL, CMOS, MOS and Mi coprocessors. 

PRB 1 DIGITAL LOGIC PROBE $ 36.95 PA 1 HIGF ' VOLTAGE ADAPTER $ 8.80 

PCI POWER CORD, Alligator Clips $ 4.98 PT 2 REPLACEMENT PROBE TIP (2) $ 1.80 

PC 2 POWER CORD, Micro Hooks $ 9.98 PLS 1 LOGIC PULSER $ 48.98 

OK Machine & Tool Corporation 


3455 Conner St., Bronx, N.Y. 10475 U.S.A. 
Tel. (2 12) 994-6600 Telex 125091 

* Minimum billings $25.00, add shipping charge $2.00 
New York State residents add applicable! tax 


4 Microcomputing, October 1980 


micro info 


7T This symbol next to a title in 
^ the table of contents indicates 
that the article is a business- 
application article. 

Manuscripts 

Contributions in the form of manu- 
scripts with drawings and/or photo- 
graphs are welcome and will be con- 
sidered for possible publication. We 
can assume no responsibility for loss 
or damage to any material. Please 
enclose a self-addressed, stamped 
envelope with each submission. Pay- 
ment for the use of any unsolicited 
material will be made upon accep- 
tance. All contributions should be di- 
rected to the Microcomputing 
editorial offices. “How to Write for 
Microcomputing’’ guidelines are 
available upon request. 

Editorial Offices: 

Pine Street 

Peterborough NH 03458 
Phone: 603-924-3873 

Advertising Offices: 

Elm Street 

Peterborough NH 03458 
Phone: 603-924-7138 


Circulation Offices: 

Elm Street 

Peterborough NH 03458 
Phone: 603-924-7296 

To subscribe, renew 
or change an address: 

Write to Microcomputing, Subscrip- 
tion Department, PO Box 997, Farm- 
ingdale NY 11737. For renewals and 
changes of address, include the ad- 
dress label from your most recent 
issue of Microcomputing. For gift 
subscriptions, include your name and 
address as well as those of gift recip- 
ients. Postmaster: Send form #3579 
to Microcomputing, Subscription Ser- 
vices, PO Box 997, Farmingdale NY 
11737. 


Subscription 
problem or question: 

Write to Microcomputing, Subscrip- 
tion Department, PO Box 997, Farm- 
ingdale NY 11737. Please include an 
address label. 

Kilobaud Microcomputing (ISSN 
0192-4575) is published monthly by 
Wayne Green, Inc., 80 Pine St., Peter- 
borough NH 03458. Subscription 
rates in U.S. are $25 for one year and 
$53 for three years. In Canada: $27 for 
one year only, U.S. funds. Foreign 
subscriptions (surface mail)— $35 for 
one year only, U.S. funds. Foreign air 
mail subscriptions- $62 for one year 
only, U.S. funds. In Europe, contact: 
Monika Nedela, Markstr. 3, D-7778 
Markdorf, W. Germany. South African 
Distributor: KB Microcomputing, PO 
Box 782815, Sandton, South Africa 
2146. Australian Distributor: Elec- 
tronic Concepts, Attention: Rudi 
Hoess, 55 Clarence Street, Sidney 
2000, Australia. Second-class 
postage paid at Peterborough NH 
03458 and at additional mailing of- 
fices. Phone: 603-924-3873. Entire 
contents copyright 1980 by Wayne 
Green, Inc. No part of this publication 
may be reprinted or otherwise repro- 
duced without written permission 
from the publisher. 

\ 


kilobaud 

MICROCOMPUTING™ 

contents' October ’80 


ARTICLES 

31 Computerized Estate Planning OSI program to settle your wealth. James Owens 
36 5 Conversing with Your Computer Call your computer by phone. Marc Seligman 

40 Address List Program Machine-language program for 6800 users. C. H. Looney 
50 Upgrading the Heath H8 with a Z-80 The HZ8 adapter. Patrick Swayne 
56 Level II ROM Subroutine Test Talking to your TRS-80. Robert M. Richardson 
60 Kilobaud Klassroom No. 21 Expansions and Programming. Peter A. Stark 
72 What Is the Utility of a Utility? Information at low cost. Frank J. Derfler, Jr. 

75 Darkroom Computerist A picture-perfect way to use your SWTP. Marc I. Leavey, M.D. 

82 Start/Exit Routine for CP/M Orderly linkages between CP/M and user programs. Ken Barbier 
84 Modifying the Horizon Double Density DOS Personalize your system. George L. Haller 
88 PET Mini Monitor Saving machine-language programs is a snap. William H. Perdue 
92 Computer-Controlled Triac Dimmer a light project. Merrill Lessiey 
102 1 OSI in the Sky A heavenly approach to handle subscriptions. William E. Shawcross, Roger W. Sinnott 

106 A New Branch on the Family Tree The nscsoo. Ken Barbier 
112 Area Estimation It’s a matter of BASIC geometry. Arnold W. Bragg 

117 The SWTP Computer System Topics include the 6809, multiprogramming and interrupts. Peter A. Stark 

128 Speed Up Your BASIC Programs Simple techniques make a difference. Edward H. Carlson 

132 Whoa, Apple Tightening the reins on galloping video displays. Terry Edward Phillips 

136 Cassette Format for 6800 Systems Speed improvement for the KC Standard. Dr. Gordon W. Wolfe 

142 Exploring CT-82 Graphics SWTP video terminal revealed. Phil Hughes 

154 Tracking Down the Bus Why some boards won’t work with the S-100. Richard A. Rodman 

158 Dial-up Directory Meet Forum-80 founder, Bill Abney. Frank J. Derfler, Jr. 

162 Reduce Search Time with an Index Breeze through file searches. LeRoy E. Kolderup 
168 Video HARDCOPY for CP/M Instant printing power. Glenn Stok 

174 Bridging the 1 pF to 100,000 uF Gap Inexpensive digital capacitance meter. Robert J. Stetson 
180 Betting on Old POKEy Animated graphics on your PET. Gary Greenberg 
182 The 16-Bit Time Trials Benchmarks revisited. Allan Flippin 

192 1802 Machine-Language Techniques Puts zip in your vip. Gerald strope 

196 Poor Man’s Logic Analyzer Troubleshooting on a shoestring. Scott B. Eckert 

202 A Humanist’s Approach to Computer Programming a man is his program. Dick Lutz 

208 Overlay Programming Memory-saving technique. Robert A. Peck 

210 A Roundoff Function in Applesoft Keep your numbers manageable. Barton M. Bauers, Jr. 

212 Clock Control Board Speed up your TRS-80. . .elegantly. Mark A. Schimelman, M.D. 


DEPARTMENTS 

Publisher’s Remarks — 6 
PET-pourri-12 
Computer Blackboard — 16 
Book Reviews — 18 
Micro Quiz -19 


New Products -20 
New Software -23 
Letters to the Editor -27 
Dealer Directory — 214 
Classifieds -214 


Cover photo by Reese Fowler. 


Microcomputing, October 1980 5 


Wayne Green 


PUBLISHER’S REMARKS 


Five Years Ago, 
Five Years Hence 


The microcomputer industry is just five years 
old this year, yet it has already seen some spec- 
tacular changes— and more are to come. In 
1975 Mits introduced the first microcomputer 
kit to attract widespread attention. Before that, 
several small firms had kits using the 8008 chip, 
but the interested numbered in the hundreds 
rather than the thousands. It took Mits to break 
things loose. 

By the end of that first year, Mits had been 
joined by Sphere and Southwest Technical 
Products, both using 6800-based systems. And 
by this time I had already put out four issues of 
Byte , the first magazine for the industry. 

During 1976 the field expanded, with systems 
from Imsai, Processor Tech, Polymorphics, 
Wavemate, The Digital Group, OSI, Intelligent 
Systems, M&R (Astral 2000), Apple, ECD, 
TDL, Veras Systems, etc. 

Of the 1975 firms, only SWTP is still around, 
though I have seen few of their systems in stores 
or ads in a long time, and interest in software 
for their system seems to have disappeared. Ap- 
ple has outperformed the 1976 group, with OSI 
continuing to grow. The rest have either disap- 
peared or virtually disappeared. 

In 1977 we had more successful starts, with 
Commodore, along with Heath, coming in ear- 
ly, followed by Radio Shack in mid-year. Com- 
modore threw away their lead and hundreds of 
millions of dollars in sales by refusing to back 
up their system with advertising and an aggres- 
sive technical team. Heath tried to make a go of 
it with only their 50 company-owned stores. 
This, plus their refusal to go with the S-100 bus, 
in my estimation, cost them tens of millions of 
dollars in sales. 

Radio Shack had a tough row to hoe at first. 
Their store managers not only knew nothing 
about computers, but most of them had little 
understanding of audio or CB, so they were 
afraid of this new invention and completely un- 
equipped to cope with customers asking ques- 
tions about ROMs and RAMs. They did have 
several things going for them— a superb in- 
struction book, written by David Lien, and 
massive television and newspaper advertising. 
They also benefited from the almost total con- 
sumer invisibility of Commodore and Heath. 

Approaching 1981, we’re looking into our 
crystal ball to see what the microcomputer busi- 
ness will look like in five more years. It’s almost 
impossible to look with any clarity into the mid- 
dle of next year, much less five years down the 
pike. There are too many variables. If we as- 
sume that there arc not going to be any more 
quantum developments, such as the 8080 chip, 
perhaps we can gain enough perspective to fig- 


ure out where we can take advantage of what is 
happening for our own benefit. 

The first order of business in predicting the 
future is to start with the market, presuming 
that the industry will pursue the market, rather 
than the reverse. The first computerists were 
hobbyists. They had to be, because making a 
computer from a kit, with pathetic instructions 
and with a finished product that often had not 
even worked in prototype, took considerable 
skill to have any success. The early manufactur- 
ers worked on the principle that hobbyists 
would build the kits and figure out how to 
make them work, thus performing the last ten 
percent of the engineering for them. It turned 
out that this system worked just fine, though it 
severely frustrated several thousand hobbyists 
in the process. 

As the field matured, the early hobbyists 
either got fed up with the expense and bum 
equipment and dropped out, or became dealers 
or manufacturers in the business. Many of 
them are still around, taking advantage of the 
things they learned during the first two years of 
microcomputers. 

With the advent of complete systems sales, 
the electronic-type hobbyist decreased in im- 
portance and was replaced by a new type of 
hobbyist, one interested in using the computer 
rather than building it. These new hobbyists 
quickly became deeply involved in developing 
utilities, writing programs, developing games 
and generally finding out the capabilities of 
their systems and expanding them. 

There is still a good market for teenagers in- 
terested in learning about computers. I think 
this will continue, but I would expect it to be a 
relatively limited market as compared to busi- 
ness and educational applications. There may 
be a few hundred thousand kids with $1000 to 
spend on a hobby, but are there much more 
than that? We’ll see. 

The businessman sees the computer as a way 
to save money and to get more done in less 
time. But he is still wary of microcomput- 
ers. . . and he should be. I am still awaiting arti- 
cles written by businessmen who have invested 
in microcomputer systems and found them to 
be of distinct advantage to them. Most of the 
letters I receive are to the contrary, expressing 
frustration over delivery problems, over service 
miseries and over the state of the software 
available. I’ll be more convinced that the in- 
dustry has an honest bargain for business when 
I start getting articles by the dozens lauding sys- 
tems and programs they are using. 

Once we have systems that can actually be 
used by business to save money and time, I 
think they will sell in prodigious quantities. 
Once we have systems that are clearly of value 
to schools, I think we’ll be selling millions of 
microcomputers. 

Where do we stand with suppliers? Radio 


Shack is out in front selling about three times 
as many systems as Apple, the next firm in 
line. That’s my guess. I’ve visited the Radio 
Shack production facility and seen what they 
are doing. Apple has not offered to let me see 
theirs, so I don’t know what they are doing for 
sure. But the sales figures that I have seen and 
the polls of our readers indicate about a three 
to one advantage for Radio Shack at present. 
The new Apple III may make the Apple of 
more interest for business applications, if they 
are somehow able to come up with some soft- 
ware support. In my discussions with Apple, I 
have not been convinced that they are serious 
about software — but then, neither is Radio 
Shack. 

Commodore has new management and is 
starting to try to make up for lost time. They, 
too, have some new systems to try and keep up 
with the state of the art. It’s quite a race, with 
Radio Shack fielding three new systems in Ju- 
ly and one more promised for November, 
bringing their coverage up to six current mod- 
els. 

Other firms, such as Atari, Mattel and Bal- 
ly, are all substantial firms, but none of them 
have shown any interest in more than minimal 
software for their systems, so I will be sur- 
prised if they do not waste a few million dol- 
lars before dropping out. They are mainly 
building extravagant toys to play games. I 
can’t believe that this is a viable long-term 
market. I think that these firms are so in- 
volved with games that they got taken in by 
the term “personal computer” and think that 
there really is a market for personal toy com- 
puter systems. Computer games will always be 
popular on computers, but I don’t think that 
many people (thousands maybe, but hundreds 
of thousands?) are going to spend $1000 to 
$2000 for a computer dedicated to games. 

So we have several firms with good possibil- 
ities for growth over the next few years. But 
we also have a number of firms that seem to be 
heading in the wrong direction, and none that 
I have seen so far have any serious interest in 
bettering their sales potential with the needed 
software. I predict that one of the major firms 
will suddenly discover the importance of soft- 
ware and will quickly pass by all the others 
when they put this discovery to use. Until that 
happens, I see a battle taking place for a rela- 
tively small market for microcomputers. I 
don’t think the market will increase until there 
is a large number of programs to support the 
systems. 


The Detroit Syndrome 

The Japanese are getting ready to pounce, 
and I suspect that their marketing plan is going 


6 Microcomputing, October 1980 



to be a lot more clever than those we have seen 
from many of the American firms. The equip- 
ment won’t be much better, but their advertis- 
ing and marketing will be. Are they serious 
about this? Matsushita, which markets here un- 
der the Panasonic and Quasar names, is seri- 
ous, and they think they are going to sell over 
one million computers in 1981 in the U.S. 
That’s a lot more than Radio Shack, Apple and 
all the rest are figuring to sell. 

Casio is thinking big, and with good reason. 
They have done a fantastic job of taking over a 
large share of the calculator market in the last 
three years. 1 carry at least three Casio calcula- 
tors, plus a Sharp Talking Clock, around with 
me most of the time. I think Sharp will be here 
soon with a computer, too. They are going hot 
and heavy in Europe expanding their produc- 
tion to where they can be very competitive. 
Casio says they intend to be the biggest firm in 
the business here in two years. 

As more and more Japanese firms dig their 
toes in at the starting line for the race across 
America, I’m watching to see what our 
American firms will do to counter this inva- 
sion. So far this year we’ve seen entries from 
Quasar, Panasonic and Casio, as well as from 
NEC, with Sharp and Hitachi headed this way. 
A reading of our trade literature makes it ap- 
parent that these firms are very serious about 
taking over and making microcomputers as 
much of a Japanese preserve as are small cars, 
stereo systems, television sets, CB radios, ama- 
teur radios and most of the other high-technol- 
ogy big -bucks consumer industries. 

Surely our American microcomputer firms 
are aware of what is happening and are prepar- 
ing for the battle? This is not the case. In fact, 
as I visit the American firms, I see a never- 
never -land blindness to what is going on. Wish- 
ful thinking and a euphoria resulting from suc- 
cess have virtually wiped out reality. 

How can you expect people who are making 
fabulous salaries, working in lavish offices in 
multi-building complexes— all generated in the 
last year or two — surrounded by minions anx- 
ious to please and fearful of sounding a disturb- 
ing tone to have any perspective? Most of these 
unfortunates have built up a dreamworld 
around themselves and their accomplices. It 
was in such a world that Processor Tech self- 



destructed. This same protective buffer of 
unreality helped Imsai to disintegrate. You can 
be sure that not one of the new tycoons will 
have the time to read this, much less think 
seriously about it. 

Thus, I see our American industry as being 
very fragile, built on ever-increasing growth, 
but virtually blind to what is going on outside 
of the beautiful executive suites in Silicon 
Valley as viewed through their tinted picture 
windows facing on automatically watered grass 
lawns. I see this as a scenario for disaster as the 
hard-working and advertising-wise Japanese 
start moving in. 

At first, our industry will try to refuse to ac- 
knowledge that the Japanese really exist or are 
any serious threat. By the time they do begin to 
see what is happening, it will be too late, and 
they will be scrambling to see what, if anything, 
can be salvaged from the ruin. We’ll see more 
of the midnight back-door deals as the formerly 
anointed back up rented trucks to grab as much 
as they can from assembly lines before the 
sheriff puts on the locks. 

In addition to this number-one blindness, 
which I expect the Japanese to exploit, there is 
one other serious, and perhaps even terminal, 
weakness in the American microcomputer in- 
dustry. This is the same weakness that has 
helped wipe out our car industry — pay scales. 

Yes, I know all about the unresponsiveness 
of the Detroit moguls to the desire for small 
cars. But while it is unpopular to give the busi- 
nessmen of Detroit credit for having any 
brains, the fact is that these gentlemen were 
well aware of the American need for economy 
cars. But Detroit had a problem, an insoluble 
problem: They could not compete against Ger- 
many and Japan in building small cars because 
the American auto workers were getting double 
the average American wage, while the foreign 
workers were making about the same wages as 
Americans. 

If Detroit could have started over and been 
able to pay normal American wages, I would 
not be driving an RX-7 Mazda and a Datsun 
280Z, nor would I be considering a Rover 3500 
as a new-car purchase. Japan moved in grad- 
ually, keeping their costs down by paying nor- 
mal wages to their people, keeping executive 
overhead low and automating in every way 
possible. I’m sure that our auto unions will 
fight for their double the average American 
wages until the last car company goes down the 
tubes. We’ve seen this same mentality sinking 
England for several years with no relief in sight. 

I realized that American productivity has 
been very low compared to other countries and 
is dropping further behind, but I hadn’t real- 
ized how much the wage scales forced on the 
auto industry by the powerful unions had made 
the industry unable to compete with foreign 
auto makers, thus forcing the American firms 
to keep making the larger gas guzzlers, which 
foreign firms were not. Our firms made the on- 
ly product they could sell and then backed this 
up with their massive advertising system. Now 
that is all falling apart. 

How does this apply to the computer indus- 
try? We have the same pattern for the Japanese 
to exploit — excessive salaries, particularly in 
Silicon Valley, where these astounding figures 
are almost considered normal, an incredible 



kiioboud 

MICROCOMPUTING™ 


PUBLISHER/EDITOR 

Wayne Green 

ASSISTANT PUBLISHER/EDITOR 

Jeff DeTray 

ASSOCIATE PUBLISHER 

Edward Ferman 

MANAGING EDITOR 

Dennis Brisson 

ASST. MANAGING EDITOR 

Susan Gross 

COPY EDITOR 

Eric Maloney 

ADMINISTRATIVE ASSISTANTS 

Suzy Clyne 
Pat Graham 
Nancy Noyd 

ASSOCIATE EDITORS 

Robert Baker 
Ken Barbier 
Frank Derfler, Jr. 

Rod Hallen 
Peter Stark 
Sherm Wantz 

DIRECTOR OF MANUFACTURING 

Noel Self 

ASST. DIRECTOR OF MANUFACTURING 

Dion Owens 

ART DIRECTOR 

Diana Shonk 

PRODUCTION DEPARTMENT 
ART STAFF 

William Anderson, Jr. 

Steve Baldwin 
Tedd Cluff 
Linda Drew 
Robert Drew 
Bruce Hedin 
Kenneth Jackson 
Ross Kenyon 
Clare McCarthy 
Michael Murphy 
Robert Sawyer 
Patrice Scribner 
Susan Symonds 
John White 

PHOTOGRAPHY 

William Heydolph 
Terrie Anderson 
Reese Fowler 

TYPESETTING 
Barbara Latti 
Sara Bedell 
Linda Locke 

EXECUTIVE VICE PRESIDENT 

Sherry Smythe 

CORPORATE CONTROLLER 

Alan Thulander 

EXECUTIVE ASSISTANT 

Leatrice O’Neil 

ACCOUNTING MANAGER 

Knud Keller 

CIRCULATION MANAGER 

Debra Boudrieau 

CIRCULATION 

Barbara Block 
Pauline Johnstone 

BULK SALES MANAGER 

Ginnie Boudrieau 

ADVERTISING 

603 - 924-7138 

Kevin Rushalko, Mgr. 

Marcia Stone 
Hal Stephens 


Microcomputing , October 1980 7 



lack of automation in the factories and tremen- 
dous overhead caused by armies of managers 
and executives. These excesses, made possible 
by the 300-400 percent growth per year of the 
industry, are the seeds of its destruction. The 
Japanese run a lean and mean ship, so they can 
come in and stomp us with prices we can’t 
match. 

All those executives and opulence add sub- 
stantially to the cost of our computers, adding 
far more than the small import duties and ship- 
ping costs from Japan. I predict that unless our 
major firms get out of Silicon Valley and into 
the low-rent districts and pay average Ameri- 
can wages to the few people needed in much 
more automated factories, we’ll see 90 percent 
of the microcomputers coming from Japan 
within five years. 

Japan took over the ham equipment, stereo, 
watch, calculator and radio markets. Now we 
are seeing technology coming from Japan, in- 
stead of from the U.S. 

Despite this foreign influx, life goes on hap- 
pily in Silicon Valley, with not even a ripple of 
concern or reaction from our industry. Radio 
Shack is in a lower-rent district, but they need 
to pay attention to their corporate overhead 
and lack of automation in their plants. They 
also need some fast work on software support 
of their products and advertising approach. 
They do have the stores and a two-year head 
start, so it would be a shame to see them blow it 
now. 

Japan already has some advantages over us 
by virtue of their lower-cost memory and mi- 
croprocessor chips. They pulled this off by out- 
automating our chip firms, thus cutting down 
the labor costs involved in making the chips. 
They also have a substantial advantage over us 
in employee efficiency, oddly enough, using 
American know-how. You may have read some 
of the spate of recent articles on how the 
Japanese brought an American named Dem- 
ming over to Japan and applied his ideas on a 
national scale to improve their productivity and 
attention to quality control. 

The Japanese have well -developed Quality 
Circles to attack every hint of a defect in the 
quality of their products or service. They worry 
about how many hours it takes for a computer 
to be fixed for the customer, the quality of the 
package it is sold in, the advertising and the 
brochures. Every detail of business is relentless- 
ly pursued for quality, and the result is superb 
products, superb advertising and customer en- 
thusiasm and confidence. I know when I buy a 
Casio or Sony product that it is going to be first 
class in every way and that I am not ever going 
to have hassles. I wish I could say the same for 
some of the American firms; my files are filling 
with bitter customer complaints about their 
quality and disregard of the customer. 

It remains to be seen whether the microcom- 
puter industry can learn from the Detroit deba- 
cle and cut their corporate overhead, automate 
and set up quality control for all phases of their 
business before it is too late. 

Yes, I am painting a grim picture, but my 
facts are accurate and not exaggerated. I have 
visited Apple, Atari, Commodore, Radio 
Shack, Southwest Tech, Texas Instruments, 
Ohio Scientific, Polymorphics, The Digital 
Group, Wavemate, Imsai, Sphere, Mits, As- 


tral, ECD, HP and others that don’t come im- 
mediately to mind. I don’t think anyone else is 
as intimately familiar with our industry. I’ve 
been around right from the beginning, talking 
with the top people in their plants and at shows. 


UK Report 

A letter from A. Zgorelec of Britain’s Per- 
sonal Computer World magazine, by far the 
largest of the UK microcomputing magazines 
with over 100 pages of paid advertising, men- 
tioned that a recent survey estimated that there 
are about 60,000 microcomputers in that coun- 
try. About half of those are PET systems, fol- 
lowed by Apple in second place, Nascom (a 
British computer, now in receivership) in third 
place and Tandy (Radio Shack) in fourth, with 
about 8000 systems sold. Tandy has only about 
100 stores in UK, as opposed to over 400 stores 
selling the PET. PET software is far more 
available and in better quantity and quality. 

I suspect that a quick infusion of Instant 
Software might turn things around for Tandy 
in UK, but obviously I’m prejudiced. This 
would call for a change in company policy, 
something that takes more than the loss of a 
few million dollars to bring about. 80- Micro- 
computing is well thought of by the Tandy 
managers, but they are not allowed to recom- 
mend the magazine to customers. 

Clive Sinclair and his $200 single-board Z-80 
computer are doing very well, with sales of over 
8000 units in eight months and at least a 90-day 
back-order situation currently. He’s making it 
happen with full-page color ads in the leading 
Sunday newspapers. This system was shown at 
CES in Chicago in June, and the signs are that 
they will be getting going in a serious way in the 
U.S. 

Other manufacturers of microcomputers in 
UK are Transam, with their Tritan and Tuscan 
systems, and Acorn Computer, with their 
Atom and Research machines (strong in the 
educational field). 


Do Your Homework 

It has come to my attention that a rather 
large number of you readers have been goofing 
off, not holding up your end of the system. I 
will not tolerate laziness in a subscriber. When 
you sign up for Microcomputing , you are doing 
far more than sending in your crummy $25. 
You are also expected to do your share of the 
work. 

For instance, as part of your responsibility, 
you are expected to check out the new books 
being offered by other publishers (we’ll take 
care of reviewing ours) and write brief reviews, 
pulling no punches about how good or how 
lousy they are. 

This also applies to software. If you purchase 
a good piece of software, let us know. If you 
find you’ve been screwed, level with us. We all 
will benefit from the news, although Micro- 
computing may lose an advertiser or two. We 
even want to know your experiences with In- 
stant Software. 


While we are able to check out a lot of the 
new hardware gadgets in our lab, it is impossi- 
ble for us to do everything. There’s just too 
much. So when you get a newly released prod- 
uct, please send in a log of your experiences 
with it so we can pass the information along to 
the rest of the readers. We want to know how it 
works, what problems you had and how re- 
sponsive the manufacturer and dealer were. 

You may work out some programming rou- 
tines which would benefit others. If so, think of 
Microcomputing as a way to pass along the in- 
formation. You’ll reach the most people that 
way ... by a wide margin. We’re all in this to- 
gether, so the more we help each other, the bet- 
ter off we’ll all be. 

Send your reports to Software Reports, Mi- 
crocomputing , Peterborough, NH 03458. 

You are also expected to work hard to recruit 
new subscribers, to put maximum pressure on 
manufacturers and dealers to advertise, to loy- 
ally buy advertised products, keeping your 
readership of the magazine no secret in the pro- 
cess, to respond enthusiastically to the reader 
service card each month and do all you can to 
help support the system of your choice. 

If a friend has developed a gadget or worked 
out a program of interest, get him to write it up 
for Microcomputing. If you find a computer 
store that does not have the magazine on dis- 
play, let us know immediately so we can correct 
this terrible state of affairs. 

Send me newspaper or magazine articles 
about microcomputers. I don’t want to miss 
anything, but obviously I can’t read every pub- 
lication there is, so I have to count on you. 

Okay, now get busy. 


Provide a “HELP” Command 

It should not be news to programmers that 
many of the users of computers are not experts. 
This should be taken into consideration when 
programs are written. All programs should 
provide an explanation of how to use the pro- 
gram by typing HELP. 

Many times I find myself faced with a com- 
puter program that does not respond to the 
normal approaches. I really hate that. I don’t 
like to be exposed, even to myself, for the dum- 
my that I can be. 

As we get more into business programs, we 
will have to remember to make them simple to 
use for someone who has walked up to the com- 
puter for the first time. It is not necessary to 
force experienced people to go through a lot of 
explanatory stuff every time they want to use 
the program, but a simple explanation should 
be available on demand. 

Programs submitted for publication and dis- 
tribution by Instant Software will be trending 
in this direction. So take note, programmers. 


Conversions Requested 

What is more frustrating than to turn the 
page of a new issue of Microcomputing and 
find just the program you need, only it has been 
written for use on some other system! 


8 Microcomputing, October 1980 


If you are into programming, this will be a 
hurdle, not a brick wall, and you’ll start keying 
in the code and watching for any commands 
you know will not perk through your own sys- 
tem. Some systems conversions are more de- 
manding than others, but, in general, there are 
few programs that will not bend to an iron will. 
Of course, when it comes to graphics, you’re 
going to have to start pretty much from scratch 
to generate them with your system. That’s 
where the hard work comes in. 

Once you’ve managed to adapt the program 
to your system, why be stingy about it? Run off 
a copy of the new program and send it in to Mi- 
crocomputing for possible publication (paid) to 
help others who are up against the problem but 
don’t have the time (or smarts) to surmount it. 
We’d appreciate a cassette copy, too. If you are 
running a disk, send it in and we’ll get it back to 
you later. This will enable us to check out your 
version of the program in our lab and possibly 
print out a clean listing for publication. 

This will help readers with smaller-circula- 
tion systems build up their program libraries. 


Toes Stepped On 

A recent “survey” in one of the newsprint 
throwaways presented a rather biased report 
with regard to Instant Software that deserves 
comment. 

The report observed that zero percent of In- 
stant Software is written in-house. This is not 
quite true. While ISI does not hire program- 
mers to write programs, there are still quite a 
number of programmers on the staff whose ef- 
forts are added to many of the programs and 
program packages that are released. The object 
is to make every program as good as it can be 
and an outstanding value. Thus, the staff often 
adds routines to programs to enhance them, as 
do associate editors, who work on contract. 
The program authors are generally consulted as 
to any changes in their works, so little of this 
will come as a surprise to them. 

Most of the programs published by ISI are, 
indeed, volunteered by the programmers. But 
there are some that are solicited from creditable 
programmers, and there is some serious discus- 
sion about getting some in-house programmers 
to write a few needed types of programs that 
have not yet been volunteered or have not been 
received through solicitations. 

The report stated that program evaluation 
time at ISI was two to three months. About 75 
percent of the rejections are made within the 
first few days, and many programmers have re- 
ceived this bad news within a week of sending in 
their programs. Once a program gets by the 
preliminary screening, it is admittedly a lengthy 
process. But this is to the advantage of the pro- 
grammer and to the customers. Programs that 
appear to have promise are sent out to associate 
editors for evaluation and possible improve- 
ment. Only about 25 percent of the programs 
are rejected after this more extensive evalua- 
tion, so the preliminary check appears to be 
valid and effective. 

One of the major differences between ISI 
and many (if not most) other software publish- 
ers is the quality of the finished product. If a 


program makes it through the lengthy process 
at ISI, it is a good program. Customers and 
dealers have found that they can depend upon 
every ISI package to be top-notch and a very 
good value. Yes, it does take longer to make 
sure the quality is always good, but this is of 
critical importance in the long run. Firms that 
make quick decisions have a very poor quality 
record. 

The documentation for ISI is mostly done in- 
house. Obviously, the better the material from 
the author, the faster the program can be pro- 
duced. ISI has a complete editorial staff to 
write and edit the documentation, set it in type, 
paste it up for printing, shoot the negatives for 
printing, etc. Many of the instruction booklets 
are even printed in the ISI pressroom. The 
volume of orders has reached the point where 
the in-house presses can’t handle them, so some 
instruction booklets are printed by outside 
printers. (The developing plans for a new ISI 
building include a much larger printing depart- 
ment.) 

The biggest difference between software 
publishers is in marketing. Small firms have 
trouble getting the interest of most dealers, 
since the bookkeeping involved soon becomes 
prohibitive. Thus, a firm such as Instant Soft- 
ware, with over a thousand released programs 
from which to choose, greatly simplifies the 
display and bookkeeping problems. Then, 


Programmers will have 
to be idiots to 
bother to write programs 
for sale if they 
get little out of it. 


too, ISI reps visit most stores once a month to 
help them with their displays, to acquaint the 
salespeople with the new releases, to pick up 
slow-moving packages or to look into any 
problems. It is this network of reps that has 
enabled ISI to reach more stores — well over 
400 stores worldwide at present— than any 
other producer of software. 

The royalties on ISI programs are normally 
20 percent of the ISI gross. If the program is 
sold by mail order, then the author receives 20 
percent of the retail price. If a program sells to 
a store at 33 percent discount, the author gets 
20 percent of that receipt. About 90 percent of 
the program sales at present are via dealers. 
This percentage seems to be increasing as the 
dealer network grows. 

Articles about software publishing would 
be of more value if they were better re- 
searched. If a programmer just goes by the 
meager facts presented in such a survey, he 
could lose thousands of dollars in royalties by 
being conned into going with a firm with fast 
action and small distribution. And at least one 
of the firms referenced in the report has been 
fleecing programmers, despite the implied 


seal of approval given by the publishing of the 
survey. 


Program Theft 

I recently received through the mail a 
Hayden software catalog, accompanied by a 
letter that offered a ten-day free examination of 
the programs. I’m reasonably honest, but I’m 
not sure I could withstand that kind of tempta- 
tion. I suspect that Hayden is so used to selling 
books this way that they went right ahead and 
used the same approach for their computer 
programs. 

While publishing books and computer pro- 
grams have many similarities, there are some 
important differences. A book is very difficult 
and expensive to copy, so ten-day free offers 
are a valid selling method. Computer pro- 
grams, which are usually more expensive than 
books, are so simple to copy that it is pathetic. 
Free examination offers make no sense in this 
field. Most of us are honest as long as you don’t 
tempt us too far. But it is so simple to send 
away for the whole catalog of Hayden pro- 
grams, dump a copy on a cassette and then re- 
turn them that I doubt that this sort of non- 
sense will continue. 

That brings me to the thinly disguised ser- 
vices aimed right at program copiers. A chap 
recently started up a “program library” service 
that would lend computer programs for a frac- 
tion of the regular sale price. Needless to say, 
Instant Software, which was in his catalog, is 
preparing a suit to stop this sort of theft. 

I’ve had several letters telling me of clubs 
that are allowing, or even encouraging, the 
copying of programs. I hope that these clubs 
are incorporated, because I’d hate to have to 
sue every member of the club instead of just the 
incorporated club itself. Where there is no cor- 
poration, every member is liable for the actions 
of the club. The usual practice is to sue all 
members and then really go after those with 
money. 

It is only by pursuing these thefts of pro- 
grams that the industry will be able to protect 
the authors of programs. And it is only by pro- 
tecting the ability to pay good royalties that we 
shall have the programs that will allow micro- 
computers to grow in their sales. To a great ex- 
tent, much of the future of the whole industry 
rests on the ability of software firms to support 
the systems. Programmers will have to be idiots 
to bother to write programs for sale if they get 
little out of it. 

While all this makes sense to everyone, peo- 
ple continue to run off disk copies of dozens or 
even hundreds of programs at the club, so why 
pass it up? Well, I can’t speak for the other 
firms in the business, but if just one person in 
your club spills the beans to ISI, he stands a 
good chance of making out rather well. We of- 
fer a $10,000 reward for such information and 
are very serious about it. We might well collect 
quite a bit more than that in damages. 

Give programmers a break and put a stop to 
program theft wherever you see it being con- 
doned. I think you’ll find very few computer 
stores that will allow this anymore. There is just 
far too much for them to lose. 



Microcomputing, October 1980 9 


«l Oskenes a surcharge ol $8 per 

additional Oskefle Mil be added A surcharge of $25 wll be added for 
software on CSSN formal DC 300X L cartridges Media charge lor 5440 
is $100 


Software / 

with / Manual 
Manual / Alone 


No.16: 

"lake a byte. 1 





(ztCoAuruz C?/m /I flfylL 

All Lifeboat programs require CP/M, 
unless otherwise stated. 

Software for most popular 8080/Z80 
computer disk systems 

Software / 

with / Manual 
Manual ' Alone 

□ CP/M* FLOPPY DISK OPERATING SYS- 
TEM— Digital Research s operating system 
configured for many popular micro-computers 
and disk systems: 

System Version Price 

, Apple II* 2.x. .. .350/25 0 

SoftCard* with Z80 
Microsoft BASIC version 5 
with high resolution 
graphics 

North Star Single Density ...1.4... .145/25 ® 
North Star Double Density .1.4 — 145/25 
North Star Single Density . . 2.x — 170/25 
North Star Double/Quad . . .2.x . 170/25 

Durango F-85 2.x ... 170/25 

(COM Micro-Disk 2411 1.4. 145/25 

iCOM 3712 1.4. . .170/25®* 

iCOM 3812 1.4 . . . .170/25* 

Mils 3202/Altair 8800 1.4... 145/25 

Heath H8 + Hi 7 1.4 . 145/25® 

Heath H89 1.4. .. 145/25® 

Heath H89 by Magnolia ..1.4... 250/25 O 
Heath H89 by Magnolia ... 2.x . 300/25 O 

Onyx C8001 2.x . 300/25 O 

Ohio Scientific C3 2.x . 200/25 

TRS-80 Model I 1.4... .145/25 ® 

TRS-80 Model II 

TRS-80 Model II 4- Corvus 


•are / 
with / M 
null/ Al 


□ SMAL/80 Structured Macro Assembler 
® Language— Package of powerful general 
purpose text macro processor and SMAL 
structured language compiler. SMAL is an as- 


□ FORTRAN-80 -ANSI 66 (except for COM- 
© PLEX) plus many extensions. Includes reiocat- 
® able object compiler, linking loader, library with 

manager. Also includes MACRO-80 (see 
below) $425/525 

□ COBOL-80 — Level 1 ANSI ’74 standard 
© COBOL plus most of Level 2. Full sequential. 
® relative, and indexed file support with variable 

file names. STRING. UNSTRING, COMPUTE. 
VARYING/UNTIL, EXTEND. CALL, COPY. 
SEARCH. 3-dimensional arrays, compound 
and abbreviated conditions, nested IF. Powerful 
interactive screen-handling extensions. In- 
cludes compatible assembler, linking loader, 
and relocatable library manager as described 
under MACRO-80 $700/$25 

□ MACRO-80 — 8080/Z80 Macro Assembler. 
© Intel and Zilog mnemonics supported. Relocat- 
® able linkable output. Loader, Library Manager 

and Cross Reference List utilities 
included $149/515 

□ muSIMP/muMATH-muSIMP is a high level 
© programming language suitable for symbolic 

.and semi-numerical processing. Implemented 


?fL™kl^Janguage .. w i th JJ!' 'I^I N ^^^j|\|^J^using a fast and efficient interpreter requiring 


»/ ? 


LOOP-REPEAT-WHILE. DO-END, BEGIN , 
END constructs $75/515 

PHOENIX SOFTWARE ASSOCIATES 

□ PASM* — Z80 macro assembler, Intel/TDL 

mnemonics. Generates Intel hex format or re- 
.locatable code in either TDL Object Module 
'format or PSA Relocatable Binary Module for- 
mat. Supports text insertion, conditional 
branching within macros, recursive macro calls 
and parameter passing $129/525 

□ EDIT— Character oriented text file editor. In- 
® eludes macro definition capabilities. Handles 

insertion, deletion, searching, block move, etc. 
for files of any length. Does not require a 
CRT. $129/525 

□ PUNK* — Two pass disk-to-disk linkage edi- 
® tor/loader which can produce re-entrant, 

ROMable code. Can link programs that are 
larger than available memory for execution 
targeted on another machine. Full library 
capabilities. Input can be PSA Relocatable Bi- 
nary Module, TDL Object Module or Microsoft 
REL files. Output can be a COM file. Intel hex 
file. TDL Object Module or PSA Relocatable 
file $129/525 

□ BUG* and /xBUG* — Z80 interactive machine 
® level debut 




« 1 70/25 w ,evei uBuugging tools for program develop- 

l I [a . A rnent. BUG has full symbolic trace and interac- 

c.x — Mli/^tive assembly (mnemonics compatible with 


Processor Technology ^ S M) ' 5yn7m!c bre^ 

Hel,os 11 1 4 1 45/25 traps while tracing (even through ROM!). m BUG 

is a subset of BUG and is used in memory 
limited situations $129/525 


Cromemco System 3 — 

..1.4.. 

145/25 

Intel MDS Single Density . 

.1.4.. 

145/25 

Intel MDS Single Density . 

. . 2.x . . 

170/25 

Micropolis Mod 1 

. . 1.4. . 

145/25® 

Micropolis Mod II 

. . 1.4 

145/25® 

The following configurations are scheduled for 
release soon: 

North Star Double/Quad 

+ Corvus 

,2.x. . 

250/25 

North Star Horizon HD-1 . . 

. 2.x . . 

250/25 

Ohio Scientific C3-C 

,2.x. . 

250/25 

Micropolis Mod II 

Mostek MDX STD 

,2.x . . 

200/25 

Bus System 

. 2.x . . 

350/25 ** 

iCOM 3812 

,2.x . . 

225/25 * 

iCOM 451 1 /Pert ec D3000 . 

. 2.x . . 

375/25 *+ 


Software consists of the operating system, text 
editor, assembler, debugger and other utilities 
for file management and system maintenance. 
Complete set of Digital Research's documen- 
tation and additional implementation notes in- 
cluded. Systems marked * and ** include firm- 
ware on 2708 and 2716. Systems marked + in- 
clude 5440 media charge. Systems marked 
® require the special ® versions of soft- 
ware in this catalog. Systems marked ® have 
minor variants available to suit console inter- 
face of system. Call or write for full list of op- 
tions. O includes hardware addition to allow our 
standard versions of software to run under it. 

□ Z80 DEVELOPMENT PACKAGE -Consists 

® of: (1) disk file line editor, with global inter and 
® intra-line facilities; (2) Z80 relocating assem- 
bler, Zilog/Mostek mnemonics, conditional as- 
sembly and cross reference table capabilities; 
(3) linking loader producing absolute Intel hex 
disk file $95/520 

□ ZDT— Z80 Monitor Debugger to break and 
® examine registers with standard Zilog/ 
® Mostek mnemonic disassembly displays. $35 

when ordered with Z80 Development 
Package $50/510 

AVOCET SYSTEMS 

□ X ASM-68— Non-macro cross-assembler with 
nested conditionals and full range of pseudo 
operations. Assembles from standard Motorola 
MC6800 mnemonics to Intel hex . $200/525 

□ XASM-65 — As XASM-68 for MOS Technology 

MCS-6500 series mnemonics $200/525 

□ X ASM-48 — As XASM-68 for Intel MCS-48 and 

UPI-41 families $200/525 

□ XASM-18— As XASM-68 for RCA 1802 
$200/525 


DIGITAL RESEARCH 

□ MP/M — Installed for single density MDS-800. 

Multi-processing derivative of the CP/M op- 
erating system. Manual includes CP/M2 
documentation $300/550 

□ MAC-8080— Macro assembler. Full Intel 
© macro definitions. Pseudo Ops include RPC. 

IRP, REPT, TITLE, PAGE, and MACUB. Pro- 
duces absolute hex output plus symbol table file 
for use by SID and ZSID (see below) $1 20/51 5 

□ SID-8080 — Symbolic debugger. Full trace, 
© pass count and breakpoint program testing. 

Has backtrace and histogram utilities. When 
used with MAC, provides full symbolic display of 
memory labels and equated values .5105/515 

□ ZSID-Z80— Symbolic debugger with all fea- 

© tures of SID $130/515 

® 

□ TEX— Text output formatter to create paginat- 
© ed, page-numbered and justified copy. Output 

can be directed to printer or disk $105/515 

□ DESPOOL— Utility program to permit simulta- 
© neous printing from text files while executing 

other programs $80/510 

□ tiny C — Interactive interpretive system for 


only 7K bytes of machine code muMATH i: 
package of programs written in muSIMP. The 
package performs sophisticated mathematical 
functions. Keeps track of up to 61 1 digits Per- 
forms matrix operations on arrays: transpose, 
multiply, divide, inverse and other integer pow- 
ers. Logarithmic, exponential, trigonometric 
simplification and transformation, symbolic dif- 
ferentiation with partial derivatives, symbolic in- 
tegration of definite and indefinite integrals. 
Requires 40K CP/M $250/520 

□ muLISP-79 — Microcomputer implementation 
© of LISP. The interpreter resides in only 7K bytes 

of memory yet includes 83 LISP functions. Has 
infinite precision integer arithmetic expressed 
in any radix from 2 to 36. muLISP-79 includes 
complete trace facility and a library of useful 
functions and entertaining sample 
programs $200/51 5 

□ XMACRO-86 — 8086 cross assembler. All 

© Macro and utility features of MACRO-80 pack- 
age. Mnemonics slightly modified from Intel 
ASM86. Compatibility data sheet 
available $275/525 

□ EDIT-80 — Very fast random access text editor 
® for text with or without line numbers. Global and 

intra-line commands supported. File compare 
utility included $89/515 


□ RASCAL/M* — Compiles enhanced Standard 
® Pascal to compressed efficient Pcode. Totally 

CP/M compatible. Random access files. Both 
16 and 32-bit Integers. Runtime error recovery. 
Convenient STRINGS. OTHERWISE clause on 
CASE Comprehensive manual (90 pp. inde- 
xed). SEGMENT provides overlay structure. 
INPORT. OUTPORT and untyped files for arbi- 
trary I/O. Requires 56K CP/M. Specify 1) 8080 
CP/M, 2) Z80 CP/M, or 3) Cromemco 
CDOS $175/520 

□ PASCAL/Z — Z80 native code PASCAL com- 
© piler. Produces optimized, ROMable re-entrant 
© code. All interfacing to CP/M is through the 

support library. The package includes compiler, 
relocating assembler and linker, and source 
for all library modules. Variant records, strings 
and direct I/O are supported. Requires 56K 
CP/M $395/525 

□ RASCAL/MT — Subset of standard PASCAL. 
® Generates ROMable 8080 machine code. 
® Symbolic debugger included. Supports inter- 
rupt procedures, CP/M file I/O and assembly 
language interface. Real variables can be BCD, 
software floating point, or AMD 9511 hardware 
floating point. Includes strings enumerations 
and record data types. Manual explains BASIC 
to PASCAL conversion. Requires 32K . $250/ 
S30 

□ APL/V80 — Concise and powerful language for 
© application software development. Complex 
® programming problems are reduced to simple 


® teaching structured programming techniques. \ ,i) expressions in APL. Features include up to 27K 
Manual includes full source listings .5105/550 N active workspace, shared variables, arrays of 
c BDS C COMPILER- Supports most features 1 ^ up to 8 dimensions, disk workspace and copy 

rr . . , vT . * lihrorw Tho ewefom alcn ci innnrrc qiiviI- 

® of language, including Structures. Arrays. 

© Pointers, recursive function evaluation, over- 
lays. Includes linking loader, library manager, 
and library containing general purpose, file I/O. 
and floating point functions. Lacks initializers, 
statics, floats and longs. Documentation in- 
cludes "The C PROGRAMMING LANGUAGE" 

by Kernighan and Ritchie $145/525 

□ WHITESMITHS C COMPILER -The ultimate 
© in systems software tools. Produces faster 
® code than a pseudo-code Pascal with more 
extensive facilities. Conforms to the full UNIX* 

Version 7 C language, described by Kernighan 
and Ritchie, and makes available over 75 func- 
tions for performing I/O, string manipulation 
and storage allocation. Linkable to Microsoft 
REL files. Requires 60K CP/M $630/530 


object library. The system also supports auxil- 
iary processors for interfacing I/O ports. Re- 
quires 48K CP/M and serial APL printing termi- 
nal or CRT 5500/530 

□ ALGOL-60 — Powerful block-structured lan- 
® guage compiler featuring economical run-time 

dynamic allocation of memory. Very compact 
(24K total RAM) system implementing almost 
all Algol 60 report features plus many powerful 
extensions including string handling direct disk 
address I/O etc $199/520 

□ CBASIC-2 Disk Extended BASIC- Non- 
® interactive BASIC with pseudo-code compiler 

and run-time interpreter. Supports full file con- 
trol, chaining, integer and extended precision 
variables, etc $120/515 


MICROSOFT 

n BASIC-80- Disk Extended BASIC, ANSI 
© compatible with long variable names, 

® WHILE/WEND, chaining, variable length file 
records $325/525 

□ DISTEL— Disk based disassembler to Intel 

8080 or TDL/Xitan Z80 source code, listing and 
cross reference files, Intel or TDL/Xitan pseudo 
ops optional. Runs on 8080 $65/510 

□ DISILOG-As DISTEL to Zilog/Mostek 

® mnemonic files $65/510 

® 

Lifeboat Associates, 1651 Third Avenue. N.Y., N.Y. 10028 (212) 860-0300 Telex: 220501 


□ BASIC COMPILER — Language compatible 
© with BASIC-80 and 3-10 times faster execution. 
® Produces standard Microsoft relocatable bi- 
nary output. Includes MACRO-80. Also linkable 
to FORTRAN-80 or COBOL-80 code 
modules 5350/525 


MICRO FOCUS 

□ STANDARD CIS COBOL -ANSI 74 COBOL 

© standard compiler fully validated by U.S. Navy 
tests to ANSI level 1 . Supports many features to 
level 2 including dynamic loading of COBOL 
modules and a full ISAM file facility. Also, pro- 
gram segmentation, interactive debug and 
powerful interactive extensions to support pro- 
tected and unprotected CRT screen formatting 
from COBOL programs used with any dumb 
terminal 5850/550 


Lifeboat Associates GmbH, Aegeristr. 35. 6340 Baar Telefon 042/31 2931 


Software 

Manual 


□ FORMS 2 — CRT screen editor. Output is 
© COBOL data descriptions for copying into CIS 
COBOL programs. Automatically creates a 
query and update program of indexed files 
using CRT protected and unprotected sdreen 
formats. No programming experience needed. 
Output program directly compiled by STAN- 
DARD CIS COBOL $200/520 


EIDOS SYSTEMS 

□ KISS — Keyed Index Sequential Search. Offers 

© complete Multi-Keyed Index Sequential and Di- 
rect Access file management. Includes built-in 
utility functions for 16 or 32 bit arithmetic, 
string/integer conversion and string compare. 
Delivered as a relocatable linkable module in 
Microsoft format for use with FORTRAN-80 or 
COBOL-80, etc $335/523 

□ KBASIC- Microsoft Disk Extended BASIC 
© version 4.51 integrated by implementation of 

nine additional commands in language. Pack- 
age includes KISS. REL as described above, 


and a sample mail list program $585/545 

To licensed users of Microsoft BASIC-80 
(MBASIC) $435/545 


□ X YB ASIC Interactive Process Control 
BASIC— Full disk BASIC features plus unique 
commands to handle byte rotate and shift and 
to test and set bits. Available in several ver- 


sions: 

Integer ROM squared $350/525 

Integer CP/M 5350/525 

Extended ROM squared $450/525 

Extended CP/M $450/525 

Extended Disk CP/M $550/525 


Integer CP/M Run Time Compiler 5350/525 
Extended CP/M Run Time Compiler$450/$25 


□ RECLAIM — A utility to validate media under 

CP/M. Program tests a diskette or hard disk 
surface for errors, reserving the imperfections 
in invisible fi(es, and permitting continued 
usage of the remainder. Essential for any hard 
disk. Requires CP/M version 2 $80/55 

□ BASIC UTILITY DISK -Consists of: (1) 

® CRUNCH-14— Compacting utility to reduce 

the size and increase the speed of programs in 
Microsoft BASIC 4.51, BASlC-80 and TRS-80 
BASIC. (2) DPFUN — Double precision subrou- 
tines for computing nineteen transcendental 
functions including square root, natural log, log 
base 10, sine, arc sine, hyperbolic sine, hyper- 
bolic arc sine, etc. Furnished in source on dis- 
kette and documentation $50/535 

□ STRING/80 — Character string handling plus 
routines for direct CP/M BDOS calls from 
FORTRAN and other compatible Microsoft lan- 
guages. The utility library contains routines that 
enable programs to chain to a COM file, retrieve 
command line parameters and search file direc- 
tories with full wild card facilities. Supplied as 
linkable modules in Microsoft format. 595/520 

□ STRING/80 source code available 

separately— 5295/NA 

□ THE STRING BIT- FORTRAN character 

® string handling. Routines to find, fill, pack, 

move, separate, concatenate and compare 
character strings. This package completely 
eliminates the problems associated with 
character string handling in FORTRAN. 
Supplied with source 565/515 

□ VSORT — Versatile sort/merge system for fixed 

® length records with fixed or variable length 

fields. VSORT can be used as a stand-alone 
package or loaded and called as a subroutine 
from CBASIC-2. When used as a subroutine, 
VSORT maximizes the use of buffer space by 
saving the TPA on disk and restoring it on com- 
pletion of sorting. Records may be up to 255 
bytes long with a maximum of 5 fields. Upper/ 
lower case translation and numeric fields 
supported $175/520 

□ CPM/374X— Has full range of functions to cre- 

ate or re-name an IBM 3741 volume, display 
directory information and edit the data set con- 
tents. Provides full file transfer facilities be- 
tween 3741 volume data sets and CP/M 
files $195/510 



□ MASTER TAX — Professional tax preparation 
© program. Prepares schedules A, B, C, D, E, F, 
t G. R/RP, SE, TC, ES and forms 2106, 2119, 

2210, 3468. 3903. 2441, 4625, 4726. 4797, 
4972, 5695 and 6521 . Printing can be on readily 
available, pre-printed continuous forms, on 
overlays, or on computer generated, IRS ap- 
proved forms. Maintains client history files and 
is interactive with CPAids GENERAL LEDGER 

II (see below) 5995/530 

n STANDARD TAX -As above for schedules A. 
t B, C, D, E, G, R/RP, SE. TC and forms 2106 and 
2441. Also, does not maintain client history 
files $495/530 

□ GENERAL LEDGER II- Designed for CPAs, 
t Stores complete 12 month detailed history of 

transactions. Generates financial statements, 
depreciation, loan amortizations, journals, trial 
balances, statements of changes in financial 
position, and compilation letters. Includes 
payroll system with automatic posting to gen- 
eral ledger. Prints payroll register, W2's and 
payroll checks $450/530 


Software / 
with / 
Manual/ 


Manual 

Alone 


□ T/M AKER — Powerful new tool for preparing 

management reports with tabular data. Makes 
financial modeling projects easy. Do you want a 
weekly profitability report? Set up the table and 
compute. Just change the sales figures for next 
week and compute. You have a new report! 
T/MAKER includes a full screen editor for 
setting up tables which pages left, right, up 
and down. Compute includes standard arith- 
metic, percents, exponents, common tran- 
scendental functions, averages, maxima, 
minima, projections, etc. Requires 48K CP/M 
and CBASIC-2 $275/$25 

□ BSTAM — Utility to link one computer to another 

<8> also equipped with BSTAM. Allows file transfers 

at full data speed (no conversion to hex), with 
CRC block control check for very reliable error 
detection and automatic retry. We use it! It's 
great! Full wildcard expansion to send *. COM, 
etc. 9600 baud with wire. 300 baud with phone 
connection. Both ends need one. Standard and 
® versions can talk to one another. .$150/$10 

□ WHATSIT?* — Interactive data-base system 
using associative tags to retrieve information by 
subject. Hashing and random access used for 
fast response. Requires CBASIC-2 .$175/525 

□ SELECTOR III-C2 — Data Base Processor to 

t create and maintain multi-key data bases. 

® Prints formatted sorted reports with numerical 

summaries or mailing labels. Comes with sam- 
ple applications, including Sales Activity, Inven- 
tory, Payables, Receivables, Check Register, 
and Client/Patient Appointments, etc. Requires 
CBASIC-2. Supplied in source $295/520 

□ GLECTOR — General Ledger option to 

SELECTOR III-C2. Interactive system provides 
for customized COA. Unique chart of transac- 
tion types insure proper double entry book- 
keeping. Generates balance sheets, P&L 
statements and journals. Two year record al- 
lows for statement of changes in financial posi- 
tion report. Supplied in source. Requires 
SELECTOR III-C2. CBASIC-2 and 56K 
system $350/525 

□ CBS — Configurable Business System is a 

comprehensive set of programs for defining 
custom data files and application systems with- 
out using a programming language such as 
BASIC, FORTRAN, etc. Multiple key fields for 
each data file are supported. Set-up program 
customizes system to user's CRT and printer. 
Provides fast and easy interactive data entry 
and retrieval with transaction processing 
Report generator program does complex calcu- 
lations with stored and derived data, record 
selection with multiple criteria, and custom for- 
mats. Sample inventory and mailing list sys- 
tems included. No support language 
required $295/$40 


MICRO DATA BASE SYSTEMS 

□ HDBS — Hierarchical Data Base System. 
CODAS YL oriented with FILEs. SETs. REC- 
ORDS and ITEMs which are all user defined. 
ADD, DELETE, UPDATE. SEARCH, and 
TRAVERSE commands supported. SET order- 
ing is sorted, FIFO, LIFO, next or prior. One to 
many set relationship supported. Read/write 
protection at the FILE level. Supports FILEs 
which extend over multiple floppy or hard disk 
devices. 


□ WORD-STAR — Menu driven visual word pro- 
© cessing system for use with standard terminals. 

Text formatting performed on screen. Facilities 
for text paginate, page number, justify, center 
and underscore. User can print one document 
while simultaneously editing a second. Edit 
facilities include global search and replace. 
Read/Write to other text files, block move, etc. 
Requires CRT terminal with addressable cursor 
positioning $445/ $40 

□ WORD-STAR-MAIL-MERGE- As above with 
© option for production mailing of personalized 

documents with mail lists from DAT AST AR or 
NAD $575/$40 

□ WORD-STAR Customization Notes— For 

sophisticated users who do not have one of the 
many standard terminal or printer configura- 
tions in the distribution version of WORD- 
STAR $NA/$95 

□ WORD-MASTER Text Editor— In one mode 

© has superset of CP/M’s ED commands includ- 
ing global searching and replacing, forwards 
and backwards in file in video mode, provides 
full screen editor for users with serial address- 
able-cursor terminal $145/$25 


□ TEXTWRITER III— Text formatter to justify and 
® paginate letters and other documents. Special 
features include insertion of text during execu- 
tion from other disk files or console, permitting 
recipe documents to be created from linked 
fragments on other files. Has facilities for sorted 
index, table of contents and footnote insertions. 
Ideal for contracts, manuals, etc. Now compati- 
ble with Electric Pencil* and Word-Star pre- 
pared files S125/S20 


PEACHTREE SOFTWARE 

□ General accounting software for small busi- 
© nesses. Each product can be used alone or with 
t automatic posting to the general ledger. 
Supplied in source for Microsoft BASIC 4.51. 


GENERAL LEDGER $530/540 

ACCOUNTS PAYABLE $530/540 

ACCOUNTS RECEIVABLE $530/$40 

PAYROLL $530/$40 

INVENTORY 5660/S40 

ALSO: 

MAILING ADDRESS $530/540 

PROPERTY MANAGEMENT $925/$40 




GRAHAM-DORIAN SOFTWARE 
SYSTEMS 

□ Comprehensive accounting software written in 
© CBASIC-2 and supplied in source code. Each 
® software package can be used as a stand-alone 
t system or integrated with the General Ledger 
for automatic posting to ledger accounts. Re- 
quires CBASIC-2. 


GENERAL LEDGER $805/540 

ACCOUNTS PAYABLE $805/$40 

ACCOUNTS RECEIVABLE $805/$40 

INVENTORY SYSTEM $555/$40 

JOB COSTING $805/540 

APARTMENT MANAGEMENT . . $805/$40 
CASH REGISTER $805/540 


G MDBS — Micro Data Base System. Full network 
data base with all features of HDBS plus multi- 


□ POSTMASTER — A comprehensive package 
level read/write protection for FILE, SET, REC- ■ j ® ,or mail Bat maintenance that is completely 
ORD and ITEM. Explicit representation of one N^^menu driven - Features include keyed record 
toone. oneto manv. manvtomanv. andmanvto for extraction and label production. A form letter 

program is included which provides neat letters 
on single sheet or continuous forms. Includes 


to one, one to many, many to many, and many to fo* 
one SET relationships. Supports multiple 
owner and multiple record types within SETs. D J 

HDBS files are fully compatible. K*^ NAD file translator. Requires CBASIC-2 

□ HDBS-Z80 version $250/$40** $150/520 


□ MDBS-Z80 version $750/$40** 

8080 version available at $75 extra. 


When ordering, specify one of the language 
interfaces listed below. Additional language in- 
terfaces available at time of purchase for $100 
or $125 if purchased later. 

**The single manual covering HDBS and 
MDBS when purchased alone comes without 
specific language interface manual. Manuals 
are available for the following Microsoft lan- 
guages: 


1) MBASIC 4.51. 2) BASIC-80 5.0. 3) Compiled 
BASIC or FORTRAN-80, 4) COBOL-80. 5) 
MACRO-80 SNA/ $10 


MICROPRO 

□ SUPER-SORT I — Sort, merge, extract utility as 
© absolute executable program or linkable mod- 
ule in Microsoft format. Sorts fixed or vanable 
records with data in binary, BCD. Packed Deci- 
mal, EBCDIC, ASCII, floating & fixed point, ex- 
ponential, field justified, etc. Even variable 


number of fields per record! S225/S25 

□ SUPER-SORT II— Above available as abso- 

© lute program only S175/S25 

□ SUPER-SORT III- As II without SELECT/ 

© EXCLUDE $125/525 


□ DATASTAR — Professional forms control entry 
© and display system for key-to-disk data cap- 
ture. Menu driven with built-in learning aids. 
Input field verification by length, mask, attribute 
(i.e. uppercase, lower case, numeric, auto-dup. 
etc.). Built-in arithmetic capabilities using keyed 
data, constant and derived values. Visual feed- 
back for ease of forms design. Files compatible 
with CP/M-MP/M supported languages. Re- 
quires 32K CP/M $350/$35 


STRUCTURED SYSTEMS GROUP 

□ Complete interactive accounting software for 
t business. Each product can be used stand- 
alone or with automatic posting to the general 
ledger. Each product is thoroughly tested and 
very well documented. Each product requires 
CBASIC-2. 


GENERAL LEDGER S820/S40 

ACCOUNTS RECEIVABLE $820/$40 

ACCOUNTS PAYABLE $820/$40 

PAYROLL $820/540 

INVENTORY CONTROL $820/540 


NEWiNEWSLETTI 
FROM LIFEBOAT 


• Latest Version 
Numbers List 
of Software 

• Update on 
CP/M Users Group 

• The Great ZOSO Speaks 
Out from Behind the Scenes 

$18 ppd. for 12 issues (U.S.. Canada. 
Mexico). Elsewhere $ 40 . 

Send Check to "Lifelines," 1651 Third Avenue, 
New York, N.Y. 10028 or use your VISA or 
Mastercharge — call (212) 722-1700 



Copyright © 1980 Lifeboat Associates. No por- 
tion of this advertisement may be reproduced 
without prior permission. 


□ ANALYST— Customized data entry and report- 

t ing system. User specifies up to 75 data items 

per record. Interactive data entry, retrieval, 
and update facility makes information 
management easy. Sophisticated report 
generator provides customized reports using 
selected records with multiple level break- 
points for summarization. Requires a disk sort 
utility such as QSORT, SUPER-SORT or 
VSORT and CBASIC-2 $250/515 

□ LETTERIGHT— Program to create, edit and 

type letters or other documents. Has facilities to 
enter, display, delete and move text, with good 
video screen presentation. Designed to inte- 
grate with NAD for form letter mailings. Re- 
quires CBASIC-2 $200/525 

□ NAD Name and Address selection system — 

Interactive mail list creation and maintenance 
program with output as full reports with refer- 
ence data or restricted information for mail 
labels. T ransfer system for extraction and trans- 
fer of selected records to create new files. Re- 
quires CBASIC-2 $100/$20 

□ QSORT— Fast sort/merge program for files 
with fixed record length, variable field length 
information. Up to five ascending or descend- 
ing keys. Full back-up of input files created 

$1 00/$20 

★ ★★★★★★ 

CONDIMENTS 

★ ★★★★★★ 

□ HEAD CLEANING DISKETTE- Cleans the 
drive Read/Write head in 30 seconds. Diskette 
absorbs loose oxide particles, fingerprints, and 
other foreign particles that might hinder the per- 
formance of the drive head. Lasts at least 3 
months with daily use. Specify 5" or 8' . 

Single sided $20 each/$55 for 3 

Double sided $25 each/$65 for 3 

□ FLIP°Y DISK KIT— Template and instructions 

to modify single sided 5V*" diskettes for use of 
second side in single sided drives $12.50 

□ FLOPPY SAVER — Protection for center holes 
for 5" and 8" floppy disks. Only 1 needed per 
diskette. Kit contains centering post, pressure 
tool and tough 7 mil mylar reinforcing rings for 


25 diskettes. 

5", Kit $14.95 

5', Rings only $7.95 

a , Kit $16.95 

8". Rings only $8.95 


□ PASCAL USER MANUAL AND REPORT- 

By Jensen and Wirth. The standard textbook on 
the language. Recommended for use by 
Pascal/Z, Pascal/M and Pascal/MT users $12 


□ THE C PROGRAMMING LANGUAGE-By 

Kernighan and Ritchie. The standard textbook 
on the language. Recommended for use by 
BDS C, tiny C, and Whitesmiths C users . $12 

□ STRUCTURED MICROPROCESSOR PRO- 

GRAMMING -By the authors of SMAL/80. 
Covers structured programming, the 8080/ 
8085 instruction set and the SMAL/80 lan- 
guage $20 

□ ACCOUNTS PAYABLE & ACCOUNTS 

RECEIVABLE — C BASIC — By Osborne/ 
McGraw-Hill $20 

□ GENERAL LEDGER - CB ASIC - By 

Osborne/McGraw-Hill $20 

□ PAYROLL WITH COST ACCOUNTING- 

CBASIC- by Osborne/McGraw-Hill $20 

□ LIFEBOAT DISK COPYING SERVICE- 

Transfer data or programs from one media for- 
mat to another at a moderate cost from $25 

★ ★★★★★★ 
Hearty Appetite. 

i i i i ^ 

*CP/M and MP/M are trademarks of Digital Re- 
search. 

Z80 is a trademark of Zilog. Inc. 

UNIX is a trademark of Bell Laboratories. 
WHATSIT? is a trademark of Computer Head- 
ware. 

Electric Pencil is a trademark of Michael 
Shrayer Software. 

TRS-80 is a trademark of Tandy Corp. 
Pascal/M is a trademark of Sorcim. 

SoftCard is a trademark of Microsoft. 

Apple is a trademark of Apple Computer. 
PASM, PLINK, BUG and/x BUG are trademarks 
of Phoenix Software Associates Ltd. 

CPAids is a trademark of Computer Tax Ser- 
vice, Inc. 


t Recommended system configuration consists 
of 48K CP/M, 2 full size disk drives, 24 x 80 CRT 
and 132 column printer. 

® Modified version available for use with CP/M as 
implemented on Heath and TRS-80 Model I 
computers. 


© User license agreement for this product must 
be signed and returned to Lifeboat Associates 
before shipment may be made. 

© This product Includes/eXcludes the language 
® manual recommended in Condiments. 


© Serial number of CP/M system must be 
supplied with orders. 


® Requires Z80 CPU. 


Ordering Information 

MEDIA FORMAT ORDERING CODES 
When ordering, please specify format code. 


LIFEBOAT ASSOCIATES MEDIA FORMATS LIST 

Diskette, cartridge disk and cartridge tape format codes to be 
specified when ordering software for listed computer or disk 
systems. All software products have specific requirements in 
terms of hardware or software support, such as MPU type, 
memory size, support operating system or language. 


Computer tyetem Format Coda 

AKair 8800 Disk See MITS 3200 

Altos AT 

Apple + SoftCard 13 Sector RG 

Apple + SoftCard 16 Sector RR 

BASF System 7100 RD 

Blackhawk Single Density Q3 

Btackhawk Micropolis Mod II ... Q2 

CDS Versatile 3B Q1 

CDS Versatile 4 Q2 

COM PAL-80 Q2 

Cromemco System 3 A1* 

Cromemco Z2D R6 

CSSN BACKUP (tape) T1 # 

Delta AT 

Dlgl-Log Microterm II RD 

Digital Microsystems AT 

Discus See Morrow Discus 

Durango F-85 RL 

Dynabyte DB8/2 Rl 

Dynabyte DB8/4 AT 

Exidy Sorcerer + Lifeboat CP/M .02 

Exidy Sorcerer + Exidy CP/M .04 

Heath H8 + H17/H27 P4 

Heath H89 + Lifeboat CP/M P4 

Heath H89 * Magnolia CP/M P7 

Helios II See Processor Technology 

Horizon See North Star 

iCOM 241 1 Micro Floppy R3 

iCOM 3712 A1 

iCOM 3812 AT 

iCOM 451 1 5440 Cartndge 

CP/M 1.4 01# 

ICOM 4511 5440 Cartndge 
CP/M 2.2 D2# 


Prices F.O.B. New York. 
Shipping, handling and C.O.D. 
charges extra. 

Manual cost applicable against 
price of subsequent software 
purchase. 

The sale of each proprietary 
software package conveys a 
license for use on one 
system only. 



Computer system Format Code 

IMS 5000 RA 

IMS 8000 AT 

IMSAI VDP-40 R4** 

IMSAI VDP-42 R4” 

IMSAI VDP-44 R5‘* 

IMSAI VDP-80 AT* 

Intecolor See ISC Intecblor 

Intel MDS Single Density A1 

Intertec SuperBrain DOS 0.1 R7 

Intertec SuperBrain DOS 0.5-2.X .RJ 

Intertec SuperBrain DOS 3.X RK 

ISC Intecolor 8063/8360/8963 A1 

Kontron PSI-80 RF 

Meca 5V P6 

Micromation 

(Except TRS-80 below) AT 

Micropolis Mod I Q1 

Micropolis Mod II Q2 

MITS 3200/3202 B1 

Morrow Discus AT 

Mostek A1 

MSD5W RC 

North Star Single Density Pi 

North Star Double/Quad P2 

Nytac Single Density Q3 

Nylac Micropolis Mod II Q2 

Ohio Scientific C3 A3 

Onyx C8001 T2# 

Penec PCC 2000 AT 

Processor Technology Helios II . ,B2 

Quay 500 RO 

Quay 520 RP 

RAIR Single Density R9 

RAIR Double Density RE 


* Single-Side Single-Density disks 
are supplied for use with Double- 
Density and Double-Side 8 soft 
sector format systems. 

** IMSAI formats are single density 
with directory offset ol zero. 

# A media surcharge of $25 for or- 
ders on tape formats T 1 and T2 and 
of $100 for orders on disk formats 
Di and 02 will be added. 

The list of available formats is sub- 
ject to change without notice. In 
case of uncertainty, call to confirm 
the format code for any particular 
equipment. 


Computer system Format Code 

Research Machines 8 A1 

Research Machines 5V«' RH 

REX Q3 

Sanco 7000 5%' RQ 

SD Systems 8 AT 

SO Systems 5V4" R3 

Sorcerer See Exidy Sorcerer 

Spacebyte .A1 

SuperBrain See Intertec 

Tarbell AT 

TEI5V« R3 

TEir AT 

Thtnkertoys See Morrow Discus 

TRS-80 Model 1 8W R2 

TRS-80 Model I + FEC Freedom RN 
TRS-80 Model 1 4 Micromation ,A4* 
TRS-80 Model I + Omikron 5W RM 
TRS-80 Model I + Omikron 8" A1 
TRS-80 Model I + Shuffleboard 8 A1 

TRS-80 Model II AT 

VDP-40/42/44/80 . . See IMSAI 

Vector MZ Q2 

Versatile See CDS Versatile 

Vista V80 5W Single Density P5 
Vista V200 5V«" Double Density . P6 
Zenith Z89 + Lifeboat CP/M P4 
Zenith Z89 + Magnolia CP/M P7 



lifeboat Associates 


The Software Supermarket is a trademark of Lifeboat Associates 


Robert W. Baker 


PET-POURR1 


Proganal 


I recently received an interesting and impres- 
sive utility program for the 8K PET from Ben- 
son Greene, 210 Fifth Ave., New York, NY 
10010. The program is called Proganal and 
provides two separate functions: It can list a 
BASIC program with special formatting and 
cursor character conversion and can generate a 
detailed analysis of the actual content and 
structure of the program. This program was ex- 
tremely interesting to me, since it follows the 
line of several programs I’ve worked on in the 
past. 

The program listings produced by Proganal 
are formatted with page indications for fold- 
ing, headings and binding instructions. This is 
convenient, since the output is designed for 
five-inch-wide roll paper. The page indications 
make it easy to fold the listings into a usable 
form. A separating line after any breaks in the 
logic sequence of the program is also provided. 

All PET graphics and cursor controls are 
printed in a form that prevents misinterpreta- 
tion, regardless of any printer limitations. All 
hidden, secret lines that contain delete graphics 
are printed in full, and any shifted blanks are 
identified. 

The detailed program analysis includes a 
wealth of information for the subject BASIC 
program. It shows all program variables, 
sorted by name and type, with all line-number 
references indicated. All BASIC commands, 
along with their line-number references, are 
listed. Any functions or operators are tallied, 
showing the total number of times each is used 
in the program. Each branch instruction, along 
with every reference line for the branch 
“target” line, is listed. 

At the end of the analysis, a summary report 
is printed showing the number of program lines 
and the range of line numbers used, the total 
number of BASIC instructions, the total num- 
ber of variable references, the number of dif- 
ferent variable names, the number of branches, 
the number of logic decisions, a relative com- 
plexity figure (shown as %) and the time to pro- 
cess the program file. The analysis output is 
also formatted and paged in the same format as 
that used for generating the program listing. 

Proganal can handle programs with up to 
300 distinct, separate line-number references 
for each letter of the alphabet, for each of the 
six types of variables. Currently, the BASIC 
program that is to be processed must first be 
saved in listing format and then read as a data 
file. Benson’s cover letter stated that he was 
working on a newer version that would work 
with the 2040 disk and overcome this require- 
ment. 

For now, you must use a tape file so that the 
program can take a long time to run. I took 


PROGANAL 3/10/88 


CURSOR CODES RRE NOTED IN BRACKETS WITH 
NO. OF REPEATS. GRAPHIC CODES ARE ASCII 

CLEAR =CC3 LEFT =C L D RIGHT =CR3 

HOME =C H ] UP =C U 3 DOWN =C D 3 

DELETE =C T 3 REVERSED V 3 OFF =C0 3 

GRAPHICS G 3 BLANK =C B X SHIFTED > 

«< LISTING »> 

100 : P0KE59468 ,14 

101 IFPEEK< 1022 >=8THENP0KE 1022, 128 

1 05 G0SU64 1 00 : A=5 : B*=25 : C*=60 

106 D*=65:E*=80:F*=40:K*=C* 

1 10 DIMA* B*,A >,B* B*, A >,C* B*,3 > 

111 DIMD*B*,3>,E*B*,3>,F*B*,2> 

112 DIMG*D*,1 >,H*D*,2),I*B*,3> 

113 DIMJ* A >,R* 300 >, V* 15 > 

1 1 5 FORA=0TOD* : READG* A,0 >: NEXT 

121 C4$=CHR*30>:C8*=CHR*29> 

122 CQ*=CHR*34> 

125 E$=CHR* 28 >+»C L 3C R 3C U 3C D 3C C 3C H 3C V 3C 
0 3CB3" 

126 F#=" TLRUDCHVOB 

1 28 FORA= 1 TOE* : I $= I *+ - - - : NEXT 

130 L*=” : L 1 $=L$+L$+L$+L$-H_$ 

135 L6S=" " : K$=L6S+L6*+ " L D DC 2 

B3 M 

1 4© GOSUB7008 : 0PEN3 , 3 : 0PEN4 , U 
150 PRINTL6$L6*L6$L6$ 

155 IFIN=0THENPRINT"C VDPUT DATA TAPE IN 
TRPE # 1 " : G0SUB295© : 0PEN2 ,1,0 


PROGRAM: 


PROGANAL 3/10/80 


160 I F I N= 1 THENGOSUB 1 800 
165 J=4: P=-l : 0=35: GOSUB3008 
1 70 I FPT=0ANDU >3THENGOSUB7500 
175 A*=“ LISTING" 

180 I FJOB=0TH£NA*=" EXPANDED "+A*: IFPT=0 
THENM= 1 

1 85 GOSUB3200 : G0SUB2998 : A*= ■ " : TS=T I 
190 :P*=‘‘ " :S$=" V$=" " 

195 :W*=”:“ 

200 :C*=W* 

210 : GET#2,W*: IFW$=CHR$< 10 >THEN210 
220 I FW*=CHR* 1 3 >THENQ=0 : GOTO400 
230 P$=P*+W$ 

248 I FW$=CQ$ANDQ= 1 THENQ=0 : WS=": G0T029 

0 

250 I FW*=CQSTHENQ= 1 : GOTO 1 95 
260 I FQ= 1 THENGOSUB600 : GOTO200 
270 IFW*<= M ! "THEN210 
280 I FW*= “ : " THENGOSUB300 
290 :V*=V*+US:GOTO200 

%*** 

300 : N I =N I + 1 : I F JOB= 1 THENRETURN 
3 10 S*=S*+P$ : 2= VAL< S S > 

320 : I F VALC P$ > >0THENP$=M ID* L*+P* , LEN< S 
TR* Z > >+2 >: I FF=0THENF=Z 
330 I FLEN< PS X =F**MTHEN360 
340 P*=LEFT* P$,F**M >+L#+" "+MID* P$,F* 
*M+1 >: IFLEN< P* X =E**MTHEN360 
350 P$=LEFT*P$,E**M>+L$+" "-H1ID* P$,E* 
*M+1> 

360 :PRINT#4,P^: IFLEN< P* »F*^MTHENO=0+l 
: IFLEN< P^ >>E**MTHENO=0+l 


- PAGE 2 - 


Example 1. Sample Proganal output. 


PROGANAL 3/10/80 


«< STRING VARIABLES »> 


m 

7370 

8020 

8030 

8040 

8045 

8050 

w$ 

8O60 

8110 





X* 

500 710 740 810 820 

1260 

1270 

X* 

1300 

1320 

1330 

1350 

1520 

3660 

x$ 

8090 

8110 

8210 

8240 

8250 


Y* 

700 740 750 770 780 

ro 

1310 

Y$ 

1330 

1350 





z* 

1570 

1620 

1640 

1650 

8120 

8130 

z* 

8150 

8180 

8L90 





«< NUMERIC ARRAYS »> 
-NONE- 



«< STRING ARRAYS 

»> 

A$< 

110 

2110 

2240 

6030 

6050 

&*< 

110 

2120 

2250 

6130 

6150 

C$< 

110 

2140 

2270 

6230 

6250 

D$< 

111 

2150 

2280 

6330 

6350 

E$< 

111 

2130 

2260 

6430 

6450 

F$< 

111 

930 6645 




PROGANAL 3/10/80 


«< MNEUMONICS »> 


24 

LEFT$< 

26 LENC 


LET 

2 

LIST 

LOAD 


LOGC 

42 

MID$< 

NEW 

35 

NEXT 


NOT 

3 ON 

6 

OPEN 

33 

OR 

2 PEEKC 

3 

POKE 


POS< 

114 PRINT 

3 

READ 

6 

REM 

1 RESTORE 

57 

RETURN 

15 

RIGHT*< 

RNDC 


RUN 


SAVE 

SGNC 


SINC 


SPCC 

SQRC 

4 

STEP 

1 

STOP 

27 STR$< 


SYS 

3 

TABC 

r an< 

192 

THEN 

33 

TO 

USRC 

37 

VALC 


VERIFY 

WAIT 


UNKNOWN 


«< BRANCH INSTRUCTIONS »> 


190 

400 

418 

195 

250 

520 

200 

260 

290 

210 

210 

270 

290 

240 


300 

280 


320 

440 


360 

330 

340 

400 

220 


470 

440 


550 

420 

500 

600 

260 


638 

610 

1280 

PROGRAM: 


PROGANAL 3/10/80 


«< AN ALAS I S SUMMARY »> 

488 PROGRAM LINES < 1-10090 > 
1033 INSTRUCTIONS 
1433 TOTAL VARIABLES 
92 VARIABLE NAMES 
233 BRANCHES 
19C LOGIC DECISIONS 
37* RELATIVE COMPLEXITY 
MINUTES TO PROCESS: 129.783056 


12 Microcomputing, October 1980 


over two hours to analyze 500 program lines. 
But with unlimited computer time on your own 
system, why worry about running time? 

Proganal was written with an original 8K 
PET with new ROMs, a 32K Expandapet and 
an Axiom EX-801 printer connected to a 
TNW-2000 interface. Several examples of what 
you can expect as output are shown in Example 

1. For more information, send a self-ad- 
dressed, stamped envelope to Benson Greene. 
He provides copies on tape with documentation 
for $10. 


Paper-Mate Command 60 

Several months ago, AB Computers of 
Montgomeryville, PA, announced its Paper- 
Mate Command 60 word processor package 
for the PET. Written by Michael Riley, this 
package is an interesting program at a selling 
price of only $29. It incorporates full-screen 
editing with graphics for all 16K or 32K PETs, 
with tape or disk drives and any printer. It in- 
cludes many features of the Commodore Word 
Pro 3 word processor, plus several new fea- 
tures. 

Written in BASIC, Paper-Mate is slower 
than Word Pro 3. Since Word Pro 3 is written 
in machine language, it can keep up with even 
the fastest typist when entering text. However, 
you must watch your typing speed with Paper- 
Mate, or you will overrun the BASIC input 
buffer. On the other hand, Paper-Mate can 
easily be modified or customized to suit your 
specific taste. The documentation even includes 
a brief program outline and a list of all BASIC 
variables used by the program. 

For writing text, Paper-Mate has a definable 
keyboard, so you can use it with either business 
or graphics machines. You can even use your 
graphics keyboard in a business keyboard 
mode, where the top row of keys produces 
numbers, and the semicolon key produces a pe- 
riod. This makes typing with the graphics key- 
board much smoother and faster. Another nice 
feature is a shift lock for letters only, or you can 
use the normal keyboard shift lock. 

Text-editing features include floating cursor, 
scroll up or down, page forward or back and re- 
peating insert and delete keys. Text block han- 
dling includes transfer, delete, append, save, 
load and insert. The editing features are not as 
outstanding as those in Word Pro 3, but they 
get the job done. 

All formatting commands are embedded in 
the text for complete control, but commands 
must be entered on a separate line. 
Paper-Mate’s commands include margin con- 
trol and release, column adjust, nine tab set- 
tings, variable line spacing, text justification, 
text centering and auto print form letters (vari- 
able blocks). Files can be linked so that one 
command prints an entire manuscript. Auto 
paging, page headers, page numbers, pause at 
end of page and hyphenation pauses are also in- 
cluded. The hyphenation pause gives you the 
option of either placing the separating hyphen 
in a long word that overflows a line or keeping 
the entire word intact on the next line. 

With this word processor, you can use PET 
graphics, as well as text. It can send any specific 


ASCII code to the printer. This allows multi- 
ple-expanded print on a Commodore 2022/ 
2023 printer, something that Word Pro 3 does 
not support. 

The following examines several features pro- 
vided by Word Pro 3 but not supported by Pa- 
per-Mate, or provided in a limited manner. 

1. You cannot display the disk directory if 
you are using a CBM 2040 disk for file storage. 
However, you can send any other command to 
the 2040 disk over the disk command channel. 

2. There are no search or replace features. 

3. Page numbers must be at the bottom of 
the page. They cannot be selectively used in 
headings, text, etc. 

4. Only a single page heading is generated, 
centered on the top of the page. Word Pro 3 al- 
lows left, middle and right fields within the 
heading— each positioned accordingly in the 
heading line. 

5. You cannot combine commands on a sin- 
gle line; each Paper-Mate command must be on 
a separate line. 

6. When editing text, you must use the cursor 
up/down keys to move from line to line. The 
cursor left/right keys do not wrap from line to 
line, as in the Word Pro 3. 

The Paper-Mate program is a good, usable 
word processor for the occasional user, con- 
sidering its lower cost. However, I still recom- 
mend Word Pro 3 for anyone requiring exten- 
sive controls and fast response. 


Light Pen Programs 

In a recent column I mentioned Quill Soft- 
ware of 2512 Roblar Lane, Santa Clara, CA 
95051, as a source of programs for use with the 
3G Light Pen. They currently offer six different 
tapes, each with two programs. 

Swords and Sorcery — An adventure game 
using the light pen to fight trolls, find gold, etc. 
An extensive version that barely fits in 8K. A 
separate introduction program uses plenty of 
graphic effects to explain general tactics. 

Darth Vader and Hunt the Wumpus— Lo- 
cate Darth Vader with your laser light beam or 
hunt the Wumpuses in a much handier fashion. 

Laser Shoot and Light Pen Keyboard— In 
Laser Shoot, you point at a moving cursor to 
fire at various targets. It’s complete with sound 
effects as well as graphics. The other program 
draws a replica of the PET keyboard for use as 
an excellent light pen demo. 

Othello and Owari — Play against the com- 
puter using the light pen to select your moves. 

Quill Quiz — Multiple-choice quizzes to test 
your knowledge of states/capitals, Spanish/ 
English, vocabulary and historical dates/ 
events. 

Billiards and Hangman— Play billiards using 
the light pen as the cue. In Hangman, use the 
light pen to save the victim or watch him climb 
the scaffold and hang. 

Quill Quiz is one of the best quiz-type pro- 
grams I’ve seen. Answers are selected by simply 
pointing the light pen at a flashing box next to 
the answer. You can even select the number of 
choices (up to ten). You can also determine the 
question-answer format. For example, choose 
the state that matches a given capital, or choose 


the capital that matches the given state. 

This program looks as if it could easily be 
changed to provide quizzes for new topics. All 
the data is contained in DATA statements, and 
the program itself is very straightforward. 

Each tape sells for $20, plus $1.50, handling. 
Be sure to specify whether your system has the 
old or new ROMs. 


CMS Business Software 

Over the past several months I’ve thoroughly 
tested a business software package from Chuck 
Stuart at CMS Software Systems (5115 Mene- 
fee Drive, Dallas TX 75227). The series of four 
program packages— General Ledger, Accounts 
Payable, Accounts Receivable and Payroll— is 
structured around the time-tested and proven 
series of business software systems developed 
by Osborne and Associates. The programs pro- 
vided by CMS are designed to fill the need for a 
comprehensive accounting package for the 
PET. Each program can either stand alone or 
be integrated with the others in a total software 
system, depending on your needs. 

Designed with the first-time user in mind, the 
programs lead the operator through verified 
data entry, step by step. It is impossible to crash 
a program due to operator error or invalid data 
input. Design consistency has been maintained 
from program to program to greatly increase 
operator familiarity and confidence. 

Documentation — normally a problem for 
small-systems users — is provided by the com- 
prehensive series of Osborne and Associates 
user manuals. These three manuals total over 
800 pages of detailed step-by-step instructions 
written at three levels for DP department man- 
agers, data entry operators and programmers. 
A second set of manuals details any operations 
not covered in the Osborne manuals and any 
program changes made during conversion to 
the Commodore system. Each program is pro- 
vided on disk with complete documentation 
packaged in a handsome, three-ring binder. 
The features of the four packages include: 
General Ledger 

• holds up to 300 accounts. 

• accepts up to 3000 transactions per month. 

• includes cash disbursements, cash receipts 
and petty cash journals for simplified data en- 
try. 

• maintains account balances for the present 
month, quarter and year, as well as for three 
previous quarters and the previous year. 

• includes complete financial reports, includ- 
ing trial balance, balance sheet, profit and loss 
statement, cash receipts journal, cash disburse- 
ments journal, petty cash journal and more. 

• accepts postings from external sources such 
as the Accounts Payable, Accounts Receivable 
and Payroll packages. Price is $295. 

Accounts Payable 

• automatic application of credit and debit 
memos. 

• maintains complete purchase records for up 
to 200 vendors. 

• invoice file accepts up to 400 invoices. 

• random-access file organization allows fast, 
individual, record updating. 

• multiple reports provide a complete audit 


Microcomputing, October 1980 13 


Address 
Hex - Decimal 

Purpose 

E000 

57344 

Initialize editor 

E003 

57347 

Get a key > return in ft 

E006 

57350 

Input a line 

E009 

57353 

Print a character in ft 

E00C 

57356 

Interrupt handler 

E00F 

57359 

Time update & keyboard scan 

E012 

57362 

Interrupt exit 

E015 

57365 

Clear- screen 

E018 

57368 

Set text mode, upper/ lower case display 

E01B 

57371 

Set graphic mode> upper oase/srarhics display 

E01E 

57374 

Set CRT controller 

E021 

57377 

Scro 1 1 screen down 1 l i ne 

E024 

57380 

Scroll screen up 1 line 

E027 

57383 

Scan keyboard 

E02A 

57386 

Piny bell 

E02D 

57389 

Set repeat -flay 

E030 

57392 

Set top lett limit o-f scroll window 

E033 

57395 

Set bottom risht limit o-f scroll window 
Example 2. Screen editor system calls. 


trail. 

• check printing with full invoice detail. 

• full invoice aging. 

• automatic posting to general ledger. Price is 
$195. 

Accounts Receivable 

• maintains invoice file for up to 300 invoices. 

• accommodates full or partial invoice pay- 
ments. 

• customer file maintains purchase informa- 
tion for up to 1000 customers. 

• allows automatic progress billing. 

• provides for credit and debit memos, as well 
as invoices. 

• prints individual customer statements. 

• automatic posting to General Ledger. Price 
is $195. 

Payroll 

• maintains monthly, quarterly and yearly cu- 
mulative totals for each employee. 

• payroll check printing with full deduction 
and pay details. 

• sixteen different reports, including W2 and 
941 forms. 

• complete job costing option with cumulative 
totals and overhead calculations. 

• random-access file organization for fast up- 
dating of individual records. 

• automatic posting to General Ledger. Price 
is $350. 

After using the General Ledger package in a 
real-life application for several months, I can 
say this is one of the best packages I’ve tried. 
The programming includes many built-in fea- 
tures and options too numerous to delineate. 

If you have a sound interface, the program 
can provide an error warning signal or a short 
beep whenever a key is struck (audio verifica- 
tion). Along with the main programs of the 
package, several disk utilities are included for 
disk copying, erasing (scratching) account files 
or zeroing account totals. 

CMS provides an update service that allows 
you to return your original program disk and 
receive a copy of the latest version for a small 
handling charge. If necessary, you’ll also re- 
ceive any utility programs required to update 
your active disks without disturbing the ac- 
counting data. 

CMS Software also offers several elaborate 
game programs for the 16K PET: Baccarat, 
Backgammon, Blackjack, Checkers, Craps, 
Cribbage, Go Moku, Othello, Quibic 4, Rou- 
lette and Space Invaders. Backgammon and 
Space Invaders cost $9.95 each; all other pro- 
grams are $7.95 each. 


Low-Cost Software 

Russell Grokett, in cooperation with the 
Jacksonville Area PET Society, has made 
available a large amount of low-cost software 
for the PET computer. Included are games, fi- 
nance, ham radio, astronomy, music, graphics 
and utility programs. Also being added are 
four-voice music and visible memory graphics 
programs. Most programs are available for on- 
ly $1.50 each, plus a small postage fee. Send an 
SASE to PET Library, 401 Monument Rd. 
#123, Jacksonville, FL 32211, for a three-page 
list of the programs available. 

Programmatics Software, 71 Sargent Ave., 


Providence, RI 02906, has also announced a list 
of software available for the PET. Many of the 
game programs use joysticks, and a parts kit 
will be available to build a simple interface for 
the PET. Other programs include a Billboard 
program with one-inch high characters and in- 
put editing, controlled scrolling speed, etc. 

I just released several programs of my own. 
If interested in a list of PET programs and/or 
products, send an SASE to Baker Enterprises, 
15 Windsor Dr., Atco, NJ 08004. 


Short Notes 

Back in March the premiere of the new vari- 
ety show “Pink Lady” featured a Commodore 
PET as a graphic device during a sequence by 
the musical group Blondie. A real-time spec- 
trum analyzer was used to translate the musical 
tones onto the screen, displayed as a fluctuating 
bar graph. As far as anyone knows, this was the 
television debut of the Commodore PET. 

An article in the March 17 issue of Comput- 
erworld described a specially adapted PET that 
is being used by a gifted, but spastic, 


14-year-old boy in Dublin, Ireland. The young 
poet suffers from severe athetoid cerebral 
palsy. He is unable to speak and has almost no 
control of his movements. With the aid of the 
PET and specially prepared software, he can 
now write, select, reread and edit his literary 
material. Commands to the system are entered 
using his chin or knees and specially designed 
switches. 

LRC, Inc., of Riverton, WY, has announced 
a new printer for the PET for under $400. The 
model 7000+ provides 40 characters per line 
with a print speed of 1.25 lines per second. An 
available option provides 64 characters per line. 
This impact printer uses standard, low-cost roll 
paper. 

One of our readers passed on this word of 
caution: If you order an Excel printer, be sure 
the unit has been tested. A printer received back 
in February apparently had an incorrect ROM 
set and printed in Kata Kana, Japanese 
phonetic characters. I should mention, how- 
ever, that Excel promptly refunded the money 
for the unit when it was returned. 

A list of screen editor system calls for anyone 
with a new 8016 or 8032 CBM with version 4, 
disk BASIC is shown in Example 2. 


14 Microcomputing, October 1980 


Natural Organic Apple Software 

Educational, intriguing and challenging. . .naturally! 


Paddle Fun 


This new Apple disk package requires a 
steady eye and a quick hand at the game pad- 
dles! We’ve included four different games to 
challenge and amuse you. They include: 
Invaders -You must destroy an invading fleet 
of 55 flying saucers while dodging the carpet 
of bombs they drop. Keep a wary eye for the 
mother ship directing the incursion. Your 
bomb shelters will help you -for a while. Our 
version of a well known arcade game! Re- 
quires Applesoft in ROM. 

Howitzer - This is a one or two person game in 
which you must fire upon another howitzer 
position. This program is written in HIGH- 
RESOLUTION graphics using different terrain 
and wind conditions each round to make this a 
demanding game. The difficulty level can be 
altered to suit the ability of the players. Re- 
quires Applesoft in ROM. 

Space Wars - This program has three parts: (1) 


Two flying saucers meet in laser combat — for 
two players, (2) two saucers compete to see 
which can shoot out the most stars - for two 
players, and (3) one saucer shoots the stars in 
order to get a higher rank - for one player only. 
Requires Applesoft. 

Golf -Whether you win or lose, you’re bound 
to have fun on our 18 hole Apple golf course. 
Choose your club and your direction and hope 
to avoid the sandtraps. Losing too many 
strokes in the water hazards? You can always 
increase your handicap. Get off the tee and on- 
to the green with Apple Golf. One of its nicest 
features is you’ll never need to cancel a golf 
date due to rain. Requires Applesoft. 

The minimum system requirement for this 
package is an Apple II or Apple II Plus com- 
puter with 32K of memory and one minidisk 
drive. 

Order No. 0163AD $19.95 



1234567890 % 

Math Fun 



Apple Fun 


We’ve taken five of our most popular pro- 
grams and combined them into one tremen- 
dous package full of fun and excitement. This 
disk-based package now offers you these 
great games: 

Mimic — How good is your memory? Here’s a 
chance to find out! Your Apple will display a 
sequence of figures on a 3x3 grid. You must 
respond with the exact same sequence, within 
the time limit. 

There are five different, increasingly difficult 
versions of the game, including one that will 
keep going indefinitely. Mimic is exciting, fast 
paced and challenging -fun for all! 

Air Flight Simulation - Your mission is to take 
off and land your aircraft without crashing. 
You’re flying blind: on instruments only. 

You start with a full tank of fuel, which gives 
you a maximum range of approximately 50 
miles. The computer will constantly display 
updates of your air speed, compass heading 
and altitude. Your most important instrument 
is the Angle of Ascent/Bank Indicator. It will 
tell if the plane is climbing or descending and 
whether banking into a right of left turn. 

After you’ve acquired a few hours flying 
time, you can try flying a course against a map 
or doing aerobatic maneuvers. Get a little 
more flight time under your belt and the sky’s 
the limit! 

Colormaster — Test your powers of deduction 
as you try to guess the secret color code in this 
Mastermind-type game. There are two levels of 
difficulty, and three options of play to vary your 
games. Not only can you guess the computer’s 
color code, but it will guess yours! It will also 
serve as referee in a game between two human 
opponents. Can you make and break the color 
code. . .? 

Star Ship Attack -Your mission is to protect 
our orbiting food station satellites from 
destruction by an enemy star ship. You must 
capture, destroy or drive off the attacking ship. 
If you fail, our planet is doomed. 

Trilogy -This exciting contest of logic has its 
origins in the simple game of tic-tac-toe. The 
object of the game is to place three of your col- 
ors in a row into the delta-like, multi-level 
display. The rows may be horizontal, vertical, 
diagonal and wrapped around, through the 
“third dimension”. Your Apple (or human oppo- 
nent) will be trying to do the same, and there 
are many paths to victory. You can even have 
your Apple play against itself! 

Minimum system requirements are an Apple 
II or Apple II Plus computer with 32K of 
memory and one minidisk drive. Mimic re- 
quires Applesoft in ROM, all others run in RAM 
or ROM Applesoft. 

Order No. 01 61 AD $19.95 


Change an Apple computer jnto a 
mathematics tutor and change boredom into 
enthusiasm with the Math Fun package. Using 
the technique of immediate positive reinforce- 
ment, students can improve their math skills 
while playing a game with: 

Hanging- A little man is walking up the steps 
to the hangman’s noose. But YOU can save 
him by answering the problems posed by the 
computer. The program uses decimal math 
problems. Each correct answer will move the 
man down the steps and cheat the hangman. 
Spellbinder -You are a magician competing 
against a computerized wizard. In order to cast 
death clouds, fireballs and other magic spells 
on him, you must correctly answer questions 
about using fractions. 

Whole Space - Pilot your space craft to attack 
the enemy planet. Each time you give a correct 
answer to the whole number problems posed 
by the computer, you move your ship. But for 


every wrong answer, the enemy gets a chance 
to fire at you. 

Car Jump -Make your stunt car jump the 
ramps. Each correct answer will increase the 
number of buses your car must jump over. 
These problems involve calculating the areas 
of different geometric figures. 

Robot Duel — Fire your laser cannon at the 
computer’s robot. If you give the correct 
answer to problems on calculating volumes, 
your robot can shoot at his opponent. If you 
give the wrong answer, your shield power will 
be depleted and the computer’s robot can 
shoot at yours. 

Sub Attack -Practice using percentages as 
you maneuver your sub into the harbor. A cor- 
rect answer lets you move your sub and fire at 
the enemy fleet. 

All of these programs run in Applesoft 
BASIC, except Whole Space, which requires 
Integer BASIC. 

Order No. 0160AD $19.95 


TO ORDER: Look for these programs at the dealer nearest you. If your store doesn't 
stock Instant Software send your order with payment to: Instant Software, Order Dept., 
Peterborough, N.H. 03458 (add $1.00 for handling) or call toll-free 1-800-258-5473 
(VISA, MC and AMEX accepted). 


Instant Software 


Prices subject to change without notice. 


PETERBOROUGH, N.H. 03458 
603-924-7296 


Microcomputing, October 1980 15 


Walter Koetke 


COMPUTER BLACKBOARD 


10 REM STUDENT NAMES - VERSION 2 
20 CLS J RESTORE X M=0 : PRINT 

30 PRINT "PLEASE TYPE YOUR FIRST NAME " * X INPUT N$ 

40 READ Fit L$ 

50 IF F$=-XXXX“ THEN 90 
AO IF F*ON* THEN 40 

70 IF M=0 THEN PRINT "YOUR LAST NAME MUST BE * L$ X M=1 X GOTO 40 
80 PRINT TAB ( 20 ) 'OR - L* X GOTO 40 

90 IF M=0 THEN PRINT 'YOU DON'T BELONG IN THIS CLASS* 1 
100 PRINT 0976* 'PRESS THE C-KEY TO CONTINUE’* 

110 X$=INKEY$ X IF X$<>-C- THEN 110 
120 GOTO 20 

300 DATA BARRY* WATERS* TOM* JONES* RHONDA* STEWART 
310 DATA TOM* SMITH* ALICE* PETERS* CAROL* ALLEN 
320 DATA CAROL* WILSON* BILL* HARRIS* TOM* MCNALLY 
330 DATA DAVID* OLSON* DANIEL* SMITH 
390 DATA XXXX* XXXX 

Listing 2. 


Dealing with Educational Realities 

The person who writes a program almost cer- 
tainly learns more than the person who uses 
that program. This is readily apparent regard- 
ing the learning of programming skills. It is also 
equally valid regarding the game, simulation, 
drill or problem that is being programmed. 

Consider, for example, a program that 
begins by asking a student to think of any coun- 
try in the world. After asking the student a few 
geographically-based yes/no questions, the 
program will correctly identify the country 
selected by the student. I’ve observed the use of 
this program by a third grader who used an 
atlas before answering many of the questions. 
The boy was obviously enjoying himself while 
learning world geography and developing map- 
reading skills. This was a marvelous use of a 
well-written program that certainly would have 
warmed the heart of the person who wrote the 
program. 

Nevertheless, the program author learned a 
good deal more geography than the third-grade 
user. The author had to first identify all of the 
countries in the world. This is a nontrivial, real- 
time task on which reputable authorities appear 
to disagree. The author then had to write the 
yes/no questions that would enable the pro- 
gram to uniquely identify each country. This 
was followed by the task of creating a program- 
mable procedure that would provide all of the 
desired interaction. Finally comes writing, typ- 
ing and debugging the actual program code. 

There’s an important message in this exam- 
ple. Whenever possible, let the students write 
their own programs. The microcomputer is a 
magnificent “what if’’ machine. Students 
should always be encouraged to experiment 
with their ideas. They should never just 
wonder, “What if I do this or that?’’ They 
should do it and experience the consequences. 
The computer cannot be harmed or even in- 


sulted by what is typed by a curious student. 
What appears to be a major disaster can be 
completely eliminated by turning the micro- 
computer off and on again. 

This message— that students should be en- 
couraged to write their own programs— is easi- 
ly lost when you visit your local computer store, 
watch a demonstration, explore the pro- 
grams in an educational resource center or even 
read a magazine. There are over 500 software 
vendors currently competing to sell you pro- 


PLEASE TYPE YOUR FIRST NAME? RHONDA 
YOUR LAST NAME MUST BE STEWART 

PLEASE TYPE YOUR FIRST NAME? TOM 
YOUR LAST NAME MUST BE JONES 
OR SMITH 
OR MCNALLY 

PLEASE TYPE YOUR FIRST NAME? 

Sample run 1. 


grams. Some of these vendors have a few sound 
products appropriate for education. Almost 
none of them have products that can be used 
while a student is using the microcomputer to 
write his own program. Thus, there is a heavy 
commercial emphasis on already written pro- 
gram packages. 

I encourage you to examine these packages 
and buy the better ones. But never lose sight of 
today’s most significant microcomputer ap- 
plication — students writing their own pro- 
grams. 

Although you may be personally convinced 
of the validity of the preceding sermonette, the 
realities of your school situation may not per- 
mit its full implementation. After all, a student 
uses considerably more computer time pro- 
gramming and debugging than another who 
merely runs an educationally sound program 
prepared by someone else. Let’s take a look at a 
couple of typical situations that aren’t very sup- 
portive of each student writing his own pro- 
gram and some alternate solutions. 

Consider the elementary school principal 
who is convinced that computer literacy must 
be incorporated into the curriculum for each of 
his 600 students. This principal is also commit- 
ted to equal opportunities for all of his 
students. He does not want microcomputers to 
become the exclusive province of a small group 
of teachers or students. As you and I nod our 
heads in agreement with his goals, he throws a 
curve. 

How can his students begin to achieve com- 
puter literacy with just one or two microcom- 
puters? After considering several possibilities, 
the principal requested that a program be 
written to implement the following plan. He 
hoped to put a microcomputer in the hall out- 
side his office with the program already 
loaded and running. One morning he would an- 
nounce that each first grader should type his 


10 REM STUDENT NAMES - VERSION 1 
20 RESTORE X M=0 X PRINT 

30 PRINT ’PLEASE TYPE YOUR FIRST NAME'* X INPUT N$ 

40 READ Fit Li 

50 IF F$= " XXXX " THEN 90 

60 IF FK>N$ THEN 40 

70 IF M=0 THEN PRINT "YOUR LAST NAME MUST BE - Li l M=1 J GOTO 40 
80 PRINT -OR ' Li X GOTO 40 

90 IF M=0 THEN PRINT 'YOU DON'T BELONG IN THIS CLASS.- 
100 GOTO 20 

300 DATA BARRY* WATERS * TOM* JONES* RHONDA* STEWART 
310 DATA TOM* SMITH* ALICE* PETERS* CAROL* ALLEN 
320 DATA CAROL* WILSON* BILL* HARRIS* TOM* MCNALLY 
330 DATA DAVID* OLSON* DANIEL* SMITH 
390 DATA XXXX* XXXX 

Listing 1. 


16 Microcomputing , October 1980 


10 REM DRILL AND PRACTICE — FOR ANY SUBJECT AREA 
20 CLS J READ N l DIM W(N) 

30 C=0 J FOR 1=1 TO N J W(N)=0 J NEXT I 

40 PRINT "HOW MANY REVIEW QUESTIONS WOULD YOU LIKE"? : INPUT R 

50 FOR K=1 TO R 

60 CLS : RESTORE t READ N* Qt 

70 P=RND(N) J IF W(P)=1 THEN 70 

80 W<P)=1 J T=0 

90 FOR 1=1 TO P J READ A$* B* l NEXT I 
100 PRINT J PRINT Q$? A*? ♦ INPUT R$ 

110 IF R$=B$ THEN PRINT "CORRECT" X C=C+1 t GOTO 140 
120 IF T=0 THEN PRINT "NO* TRY AGAIN ♦ " ♦ T=1 ♦ GOTO 100 
130 PRINT "NO* THE ANSWER IS " ? B* 

140 PRINT @976* "PRESS THE C-KEY TO CONTINUE"? 

150 X*=INKEY* ♦ IF X$<>*C" THEN 150 
160 NEXT K 

170 CLS X PRINT "YOU ANSWERED" C "OF" R "REVIEW QUESTIONS CORRECTLY." 

300 DATA 10 f WHO IS THE COMPOSER OF 

310 DATA YELLOW SUBMARINE * BEATLES 

320 DATA SWAN LAKE* TCHAIKOVSKY 

330 DATA STARS AND STRIPES FOREVER » SOUSA 

340 DATA THE BRANDENBURG CONCERTOS * BACH 

350 DATA THE NEW WORLD SYMPHONY > DVORAK 

360 DATA 50 WAYS TO LEAVE YOUR LOVER * SIMON 

370 DATA CAMELOT * LOWE 

380 DATA OKLAHOMA * RODGERS 

390 DATA 76 TROMBONES* WILLSON 

400 DATA PETER AND THE WOLF* PROKOFIEV 

Listing 3. 


RUN 

HOW MANY REVIEW QUESTIONS WOULD YOU LIKE? 4 

WHO IS THE COMPOSER OF THE BRANDENBURG CONCERTOS? BACH 
CORRECT 

WHO IS THE COMPOSER OF YELLOW SUBMARINE? EAGLES 
NO* TRY AGAIN. 

WHO IS THE COMPOSER OF YELLOW SUBMARINE? BEATLES 
CORRECT 

WHO IS THE COMPOSER OF 50 WAYS TO LEAVE YOUR LOVER? SIMON 
CORRECT 

WHO IS THE COMPOSER OF CAMELOT? SOUSA 
NO* TRY AGAIN. 

WHO IS THE COMPOSER OF CAMELOT? RODGERS 
NO* THE ANSWER IS LOWE 


YOU ANSWERED 3 OF 4 REVIEW QUESTIONS CORRECTLY. 
READY 


Sample run 2. 


first name on the computer “just to see what 
happens.* * He wanted the program to respond 
by displaying the last name of the student. 
After two or three days, he would make the 
same announcement to the second grade, and 
so forth. 

The initial version of a program that met 
these requirements was written by a fourth 
grader in another school. See Listing 1 and 
Sample run 1 . 

That’s all there is to it. By changing the 
DATA statements, you can make the program 
apply to your class. You might also add nick- 
names so the computer can identify students by 
first name or nickname. For example, if Tom 
Smith’s nickname is Ferd, then the DATA 
statements would contain both FERD, SMITH 
and TOM, SMITH. Alternately, the student 
might enter his full name and have his address 
displayed or enter his phone number and have 
his name or date of birth displayed. 

Remember to use “XXXX”, “XXXX” 
(now in line 390) as the final two items in the 
DATA statements, because the program uses 
this as an indicator that there are no more 
names in the list. Be careful when entering the 
DATA lines of this program. If you misspell a 
student’s name, he is going to feel badly when 
the computer is unable to identify him. 

As is the case for virtually all programs, this 
one can be improved. One improved version 
for the TRS-80 is illustrated in Listing 2. Note 
that the changes (lines 20, 80 and 100-120) are 
all user oriented. They provide a more attrac- 
tive display and a reduced chance of student 
confusion. Should you use the program, you’ll 
probably make additional improvements of 
your own. 

Return for a moment to the hallway and the 
first graders entering their first names. Use of 
this program accomplished several things. 
Students and teachers alike learned they could 
touch a computer without harming themselves 
or the machine. Student interest was very high. 
They wondered, “How did it know my name? 
What else does it do? How does it print so 
fast?” 

As a necessary part of his goal regarding 
computer literacy, the principal distributed 
copies of the entire program to the students 
during the week following their first computer 
experience. What did they see? They saw a few 
lines of BASIC that they didn’t yet understand, 
followed by the first and last name of every stu- 
dent in their grade. 

Then several important ideas became ap- 
parent. The computer uniquely identified 
Rhonda because there’s only one Rhonda in 
first grade. Tom was given three possibilities 
for his last name because there are three Toms 
in the first grade. The students learned that the 
computer can process data very rapidly. But the 
computer does not know anything we haven’t 
told it. That’s an important idea on the road to 
computer literacy. 

Now consider an altogether different situa- 
tion. Suppose you are completely convinced 
that students should write their own programs 
whenever possible. However, educational reali- 
ties require that you convince other teachers of 
a variety of subject areas that the computer will 
also be useful to them. This is a rather common 
political situation for teachers in many schools. 


Let’s examine a single program that can be 
used in nearly all subject areas, although in this 
instance the program is adapted to music. (See 
Listing 3 and Sample run 2.) This program is a 
no-frills drill and practice exercise, but its ver- 
satility just might help convince others that mi- 
crocomputers are useful. Check last month’s 
article for one appropriate use for this type of 
program. 

Briefly, the program selects a question at 
random from those in the DATA statements. If 
the student answers a question correctly, an- 
other question is randomly selected. If a ques- 
tion is answered incorrectly, the question is re- 
peated. If the question is answered incorrectly 
again, the right answer is given and the next 
question is selected. 

There are several aspects of this program 
worth noting. Although rather brief, it contains 


several features that might be included in your 
own drill and practice routines. Line 40 permits 
the student to enter the number of questions de- 
sired. This is helpful, since all students don’t re- 
quire the same amount of review. This feature 
also makes the program usable within the 
changing time constraints of the classroom. 

Lines 70 and 80 ensure that the randomly se- 
lected questions will not be repeated during a 
single session. The variable T in lines 80 and 120 
is used to indicate how many times a question 
has been incorrectly answered. This can be easi- 
ly modified to allow additional tries before the 
correct answer is given. 

Lines 130-150 allow the student to proceed 
at his own rate. A question and the correct 
answer are only cleared from the screen when 
the student indicates he is ready to continue. 

If you don’t understand lines 10 through 


Microcomputing, October 1980 17 


300 DATA 8 » WHICH WORD IS THE NOUN — 

310 DATA BILL RAN FAST** BILL 

320 DATA THE HORSE WAS TIRED » * HORSE 

330 DATA A SMART PERSON IS THINKING ♦ t PERSON 

340 DATA THE RACE WAS CLOSE *r RACE 

350 DATA CANDY IS SWEET!* CANDY 

360 DATA THE PROBLEM IS SOLOED ♦ t PROBLEM 

370 DATA MY PENCIL IS SHARP ♦ t PENCIL 

380 DATA COMPUTERS ARE FUN TO USE ! r COMPUTERS 


Listing 4. 


170, that’s OK for now, but you should try to 
eventually understand them. Line 300 is special 
since it contains the number of questions and 
answers (only ten in Listing 3), as well as the 
common portion of each question. DATA lines 
from line 3 10 to the end of the program contain 
each of the questions and answers that might be 
selected in the drill. 

The most important feature of this program 
is that it provides you with the ability to com- 
pletely change not only the questions, but also 
the subject area and question format by merely 
retyping the data lines. For example, Listing 4 
illustrates data for a drill that might be ap- 
propriate for an English teacher, while Listing 


5 illustrates data for an elementary school 
mathematics lesson. 

Don’t be misled by the brevity of these ex- 
amples. A 16K microcomputer with just cas- 
sette storage can hold hundreds of questions 
and answers in a single program. A teacher who 
takes the time to prepare a sizable number of 
drill questions will provide students with an ef- 
fective, comprehensive tool for review. 

Remember that the student who writes a pro- 
gram learns more than anyone who uses the 
program. There are, however, many circum- 
stances in which the programs of others can be 
very helpful. Hopefully the programs in this ar- 
ticle will help you address two very common 


300 

DATA 

Ilf 

TYPE THE MISSING NUMBER 

310 

DATA 

2 

4 - 8 f 6 

320 

DATA 

217 

- 219 220 f 218 

330 

DATA 

27 

30 33 - f 36 

340 

DATA 

5 

10 - 20 r 15 

350 

DATA 

- 

7 10 13 f 4 

360 

DATA 

4 

- 12 16 f 8 

370 

DATA 

120 

130 - 150 t 140 

380 

DATA 

- 

88 90 92 f 86 

390 

DATA 

21 

28 35 - f 42 

400 

DATA 

27 

36 - 54 f 45 

410 

DATA 

15 

- 31 39 f 23 




Listing 5. 


educational realities — serving many students 
with minimum microcomputer availability and 
demonstrating to other teachers that the 
microcomputer can help them in their own sub- 
ject areas. The second example goes even fur- 
ther in that it demonstrates that teachers with 
no programming skills can still tailor drills for 
their students in precisely the fashion they 
choose. 

Correspondence concerning this column 
should be addressed to Walter Koetke, Put- 
nam/Northern Westchester BOCES, 
Yorktown Heights, NY 10598. 


BOOK REVIEWS 


Optimization Techniques in FOR- 
TRAN 

Joel L. Sears 
Petrocelli Books, Inc. 

New York, 1979 
90 pages, softcover, $10 


The title of this book is a misnomer. 

Optimization, taken in its usual context, 
means to use some scarce resource of a machine 
less frequently. This can be done through such 
methods as making the program run faster or 
requiring less primary storage. 

But in most cases, Sears does not deal with 
faster run times or less memory. 

Programming Tricks in FORTRAN might 
have been a more descriptive title. 

Sears shows numerous ways to get more out 
of your compiler than you can with most FOR- 
TRAN dialects. Using sample programs and 
clear explanations, he covers such topics as 
character manipulations, input/output, inter- 
nal documentation facilities and subprograms. 

While the material is oriented toward FOR- 
TRAN, many of the techniques can easily be 
adapted to other programming languages. To 
the FORTRAN programmer, this book can be 
an invaluable aid. 


To the non-FORTRAN programmer, this 
book can help him get a little more out of his 
translator. 

W.A. Harrison 
Rolla, MO 


Digital Experiments, 2nd Edition 

Richard E. Gasperini 
Hayden Book Co., Inc. 

Rochelle Park, NJ, 1978 
192 pp., $8.95 

This is essentially a workbook that will guide 
you through 25 hands-on verification experi- 
ments. These experiments are designed to ac- 
quaint you with the operation of basic ICs and 
LEDs, and teach how to power them, what the 
pin connections look like, what kinds of out- 
puts are obtained in response to various inputs 
and how to connect them. 

The experiments progress not only by the so- 
phistication of the circuit but by the amount of 
guidance given. The initial experiments are 
highly structured, with few decisions required. 
Later, you must look up your own pinouts. Fi- 
nally, even the schematic must be worked out. 

In the introduction you are told about a logic 
lab, which is essentially a breadboard for ICs, 


power supply, switches for data input, LEDs 
for level indication and a slow and fast clock. 

The book recommends how to buy labs or 
lab kits, and gives sufficient circuitry and in- 
structions for those who care to design and 
build their own. It also makes recommenda- 
tions regarding the acquisition of a logic probe, 
pulser and other equipment to carry out the ex- 
periments in this book. Seventeen different 
types of ICs and LEDs to be studied in these ex- 
periments are listed. 

All the data sheets required for these ICs and 
more are furnished in an extensive appendix. 
Other appendices furnish data sheets on the 
LEDs, IC cross-references and sources of ICs. 

Gasperini includes everything necessary to 
get the beginner started. If you choose to build 
your own lab, as you might after reading the 
recommendations, you will find not only that 
you have a better lab at far less cost, but also 
that your digital education is already well-un- 
derway. 

The experiments start with the measurement 
of logic levels. They continue by studying the 
operation of the 7404 hex inverter, what hap- 
pens when input leads are left open and trou- 
bleshooting. Experiments 3 to 6 cover the oper- 
ation of the AND, NAND, OR and NOR gates, 
and 7 covers LEDs. Following this, the book 
discusses decoders in general, and studies a 
BCD to decimal decoder. Since multiplexers 


18 Microcomputing , October 1980 


are somewhat related, they are treated next. Ex- 
periment 10 covers the exclusive-OR as a com- 
parator and as a programmable inverter. 

Starting with Experiment 1 1 , you are forced 
to determine your own pin connections (from 
the data sheets appendix). The next few experi- 
ments study the interconnection, operation and 
use of various kinds of latches and flip-flops. 
These are followed by several styles of coun- 
ters, drivers and displays. 

Each of these experiments is well thought 
out, and you are supplied with definitions, ex- 
planations and diagrams. It would be hard to 
go wrong. 

In Experiment 23 the reader is closely guided 
through the connection and operation of a ran- 
dom access memory. In Experiment 24, you are 
encouraged, with some guidance, to connect 
and operate a digital clock, using many of the 
ICs studied in the previous exercises. The last 
experiment is totally unstructured. 

It is difficult to review this book without 
mentioning another book by the same author, 
on much the same subject. Digital Trouble- 
shooting contains a great deal of very practical 
digital theory that would very nicely augment 
the theory given in Experiments. I recommend 
that you use the books together. 

This book, along with its companion, is one 
of a growing number that start at a beginner’s 
level and progress toward something more 
complicated. While many attempts fall short, 
this one does not. The book is easy to read and 
thoroughly enjoyable to work with, and I high- 
ly recommend it. 

Alfred Adler, Ph.D. 

Tucson, AZ 


Computer Systems Organization 
and Programming 

Harry Katzan, Jr. 

Science Research Associates, Inc. 

Chicago, IL 1976 
Hardcover, 459 pp., $17.95 

Many books cover a specific topic in great 
detail. But sometimes the computerist wants a 
more general survey of the many aspects of 
computer systems and programming. Comput- 
er Systems and Organization is just such a 
book. 

It starts off with an introduction to algo- 
rithms, sequential machines and grammars, 
and progresses to programming languages and 
computer architecture. It discusses in detail the 
processing unit, main storage and input/output 
organization, and covers number systems, 
complement arithmetic, internal data represen- 
tation, structures, lists and arrays. 

The book provides a good introduction to 
general machine language. In addition, it cov- 
ers programming techniques, including string 
manipulation and list processing operations. 

An introduction to computer software sur- 
veys assemblers and discusses their relation to 
monitors and linkage editors. A section on pro- 
gramming techniques introduces macros, pre- 
sents the relation of chaining, overlaying and 
common storage to the machine and structured 
programming and provides a thorough treat- 


ment of subprograms. 

Two chapters on data management intro- 
duce external storage devices, file structures, 
storage device technology and data manage- 
ment functions, and end with a condensed 
treatment of data base concepts. 

The author also deals with operating systems 
and their functions. He discusses operating sys- 
tem organization, scheduling, allocation, inter- 
rupt control and virtual storage methods. 


This month, we are pleased to introduce our 
readers to “Micro Quiz, ” a new column that 
will be appearing regularly in the pages o/Kilo- 
baud Microcomputing. The column appears 
through the efforts of Marc Brown, director of 
the New England Computer Science League 
(NECSL), which administers monthly comput- 
er contests for high-school students. 

Each month, Marc will test Kilobaud Micro- 
computing readers with programming prob- 
lems and computer questions — varying in de- 
gree of difficulty — taken from previously held 
NECSL contests. Answers will appear in the 
back pages of the same issue. 

To help you better understand the source of 
the questions used in this column, we have in- 
cluded a brief profile of the history and activi- 
ties of the NECSL. 

Organized in 1978, the New England Com- 
puter Science League (NECSL) conducts con- 
tests for high -school students and awards prizes 
to outstanding students and schools on local 
and regional levels. 

NECSL motivates students to study comput- 
er topics not covered in their school’s curricu- 
lum and to pursue classroom topics in depth. It 
encourages students to exchange intellectual 
ideas and helps them to improve their computer 
skills. It has already provided the impetus for 
some high schools to expand and improve their 
computing facilities and course offerings. 

Contests are held simultaneously at each par- 
ticipating school, and an unlimited number of 
students from all grade levels may compete at 
each school. A school’s score for each contest is 
the sum of the scores of its five highest -scoring 
students. In each contest, students are given 
short theoretical and applied questions and 
then a practical programming problem to solve 
(within the following two days) using their 
school’s computer facilities. After the contest is 
administered by the faculty advisor, each 
school’s results are returned to the League for 
tabulation. At the completion of each year’s 
contests, an all-star competition is held. 

Short questions are designed to be both easy 
and difficult. This encourages students from all 
grade levels to participate. Much of the subject 
matter is new to students, but the programming 
problems are designed to be useful, practical 
real-world applications. 


Computer System Organization and Pro- 
gramming is a good survey of organization and 
programming, and does a good job of present- 
ing the concepts that are essential for additional 
study. But while the book seldom gets too de- 
tailed, you should have a basic knowledge of 
computers. This is not for neophytes. 

It is also an excellent reference book. 

Warren A. Harrison 
Rolla, MO 


Providing graduated test data is another ma- 
jor appeal of the League. Novices can write 
programs on simplistic levels to handle the first 
few test data elements, while experienced pro- 
grammers can write programs on sophisticated 
levels to handle the more difficult test data ele- 
ments. 

High schools have chosen to implement 
NECSL in many different ways. Some schools 
that do not offer any computer courses have 
used NECSL as the focal point for their com- 
puter club. Some have used the contest materi- 
als to supplement existing courses, and some 
schools have even used NECSL as the outline 
for an entire course in computer science. 

The NECSL idea blossomed under the direc- 
tion of Marc Brown, currently a graduate stu- 
dent in Computer Science at Brown University 
in Providence, Rhode Island. In its first year, 
NECSL operated in an experimental mode only 
in Rhode Island. It soon became apparent that 
there was a tremendous need for a computer 
science league, and the League then expanded 
into the remaining New England states the next 
year. Today, participation is open to all schools 
throughout the entire country. 

Currently, a handful of annual program- 
ming contests exists throughout the United 
States. NECSL is unique because its contests 
cover many aspects of the science, not merely 
programming, and contests are regularly held 
each month, not yearly. 

Queries regarding column questions or solu- 
tions or the NECSL should be addressed to: 
Marc Brown 
NECSL 
Box 1910 
Brown University 
Providence, RI 02912 

Upon completion of the follow- 
ing program, how many differ- 
ent elements of array X will have 
been accessed? 

DIM X(10) 

FOR J = 1 TO 6 

READ A 
X(A - J) = J 
NEXT J 

DATA 8, 3, 10, 6, 7, 7 

answer on page 214 


MICRO QUIZ 


Microcomputing, October 1980 19 


Edited by Dennis Brisson 

NEW PRODUCTS 


Panasonic’s Handheld Computer 

The RL-H1000 is a modular handheld com- 
puter (HHC) that features a full complement of 
separate peripheral devices including an input/ 
output interface to attach up to six additional 
peripherals, an acoustic coupler/telephone mo- 
dem, cassette interface, video RAM interface 
for hook-up to a home TV set, a mini printer 
and RAM and ROM memory expanders. The 
RL-H1000 accommodates four 16K, 32K, 64K 
or 128K ROM capsules. Four additional cap- 
sules can be added with a ROM expander mod- 
ule. It has 65 re-assignable keys and a keyboard 
overlay system. A complete ASCII character 
set, in addition to the “help” key, makes tradi- 
tional command programming easy. Three 
user-definable function keys accommodate 
specific capsule programs, multiple key se- 
quences and specialized terminal functions. A 
memory key allows entrance into RAM from 
within any program and automatically selects 
the proper RAM mode for each program. With 
the four-direction window control, you can 
drive anywhere within any program or memory 
file. 

A full matrix liquid crystal display graphics 
panel is incorporated on the RL-H1000. It dis- 
plays graphics, foreign alphabet characters and 
proportional spacing, as well as full upper and 
lowercase ASCII. A ten-speed display control 
key gives information at varying rates of speed. 

The RL-H1000 has a built-in RAM, so you 
can store up to 500 characters for use as a por- 


table, electronic memo pad. A self-contained 
world time clock displays month, date, hour 
and minute. The HHC has a programmable 
timer with alarm and message function to work 
as an electronic secretary. It is also compatible 
with virtually every computer data bank via the 
telephone modem/acoustic coupler. 

Panasonic Company, One Panasonic Way, 
Secaucus, NJ 07094. Reader Service number 
483. 


Socket- Wrap ID 

Now you can easily identify pin numbers on 
wire- wrapping sockets with the Socket- Wrap 
ID from OK Machine and Tool Corporation, 
3455 Conner St., Bronx, NY 10475. These 
socket-sized plastic panels with numbered holes 
in the pin locations can be simply slipped onto 
the socket before wrapping. You can also write 
on them for easy identification of location, IC 
part number or function to simplify both initial 
wire-wrapping and subsequent troubleshooting 
or repair. Reader Service number 498. 


Direct-Connect TRS-80 Modem 

Lynx is a new direct-connect telephone 
modem for the TRS-80 that eliminates the need 
for a separate expansion interface, interface 
board, telephone coupler and communications 


OK Machine and Tool's pin number identifier. 

software. It connects directly with the keyboard 
and the telephone line; no acoustic coupler is 
used. It includes originate and answer capabili- 
ty and is programmable for word length, pari- 
ty, number of stop bits and full or half duplex. 
During data exchange, it automatically discon- 
nects the local telephone handset, thus elimi- 
nating room noise pickup typical of acoustic 
couplers. 

Minimum hardware requirements are a Lev- 
el I or II with 4K RAM. Including a terminal 
cassette program, instruction manual and 
power pack, the Lynx costs $239.95. 

Emtrol Systems, Inc., 1262 Loop Road, 




Panasonic's HCC with peripherals. 


The Lynx modem. 


20 Microcomputing, October 1980 



Instant SoftwaielNew Releases 


FOR THE TRS-80* 


LIFE 

Would you like to play god? 

Even if you’ve only been involved with com- 
puters for a short while, you’re certain to have 
heard of Life. The game was originally created 
by British mathematician John Conway and 
popularized in Martin Gardner’s Mathematical 
Games column in Scientific American maga- 
zine. Life, a computerized simulation of the life 
cycle of a colony of bacteria, allows you to 
manipulate both the bacteria and their environ- 
ment. 

Over the years the game has lost none of its 
fascination for computerists. It is based on a 
few simple concepts but it results in captivating, 
animated graphics displays. 

There are two versions of Life included in 


this package. The first is written in machine- 
language and is the most versatile, flexible and 
the swiftest version of Life we’ve ever seen. The 
second is in BASIC with machine-language 
subroutines. This allows both the machine-lan- 
guage devotee and the BASIC aficionado to ex- 
periment with the program. 

Patterns can be created and edited easily. 
You can create your own “creatures” or use the 
library of preprogrammed creatures. You can 
run at full speed (100 to 200 generations per 
minute), enter a pause factor, or single step 
through the life cycle. 

No matter how you approach Life, whether 
artisitically, mathematically, intuitively, or just 
for fun, this is THE classic program. 

Order No. 0078R $9.95 


Winner’s Delight 

Are you a winner? Do you enjoy challenging 
yourself with thorny tasks? Then try Winner’s 
Delight. This quartet includes: 

Amazing — You must escape from a maze, one 
that you view from the inside. You must work 
against the clock— and you may meet a nasty 
dwarf who can block your passage to freedom. 
Junior Checkers— Not your usual game of 
checkers . . . The challenge is to beat the com- 
puter in the fewest number of moves. 

Jumbo Jigsaw — Fit the pieces of the jigsaw 
together in the fewest number of tries. The pro- 
gram offers three levels of expertise for you to 
choose from. 

Thirteen Ways — Try to fill up your columns 
with the numbers you roll on dice. Lady Luck 
may be with you or against you. But you may 



be certain that the computer will be plotting 
how to fill its columns first! 

You too can be a winner, with Instant Soft- 
ware! 

Order No. 0124R $9.95 



Body Buddy 

Get to know the Inner You. Use this package 
to learn your caloric needs and to set up a 
weight-loss diet. It will also introduce you to 
human anatomy and physiology. 


The Adult Caloric Requirements program 
can determine your Basal Metabolic Rate, after 
you respond to a computerized “question- 
naire”. Then the program makes recommenda- 
tions on how you can reach an ideal weight, 
through dietary planning. 

Our Flexi-Diet program will create a prac- 
tical diet for you. Choose your caloric intake, 
from 600 to 2400 calories per day. The program 
will make up sample menus for any meal you 
desire. If you don’t care for its choices, it will 
make as many alternative menus as you like! 

In the Anatomy Quiz program, a human tor- 
so is drawn on your video monitor and you 
must locate various organs within the body. 
After you’ve made your choice, the program 
gives a mini-lesson, which includes the organ’s 
size, exact location and major bodily functions. 

Body Buddy: Let it change you for the bet- 
ter! 

Order No. 0109R $9.95 


Instant Software 


M 

^40 



Investor’s Paradise 

Imagine that you’ve been given a large sum 
of money and have the opportunity to see if you 
can make a killing in the market . . . 

Stock Trek — This is a stock market simulation 
in which you and up to five other investors buy 
and sell stocks. See if you can transform $5000 
into a fortune in twelve short months. The pro- 
gram has an automatic ticker tape that an- 
nounces market conditions plus a stock price 
display board. You can ask for a prospectus 
that will describe each stock and its dividend 
potential. Finally, you can see the performance 
of each stock displayed on a graph. At the end 
of one (simulated) year, the computer will 
display the net worth of all investors. The 
player with the greatest net worth is advised to 
start looking at the financial pages. 
Speculation — This program goes a step beyond 
being a mere simulation. You enter the finan- 
cial data on up to 25 real companies and start 
playing the market. You can buy and sell shares 
based on net cost, including sales commissions. 
You’ll be able to compare how you did in the 
market, based on the value of your portfolio 
and accumulated dividends, versus investing 
your money at a fixed rate of interest. This pro- 
gram can simulate up to five years of playing 
the market in computer time and all your data 
can be stored on tape for future reference. 
Although this program isn’t intended to 
simulate actual market conditions, it comes 
darned close. 

The Investor’s Paradise package lets you ex- 
perience all the thrills and triumphs of the stock 
market without risking a dime. 

Order No. 0125R $9.95 

*A trademark of Tandy Corporation 


TO ORDER: Look for these programs at 
the dealer nearest you (see list of 
dealers on page 205). If your store 
doesn’t stock Instant Software send 
your order with payment to: Instant Soft- 
ware, Order Dept., Peterborough, N.H. 
03458 (Add $1 .00 for handling) or call toll- 
free 1 -800-258-5473 (VISA, MC and AE ac- 
cepted). 


Prices subject to change without notice. 


Peterborough, l\I.H. 03458 


t * Reader Service index— page 241 


Microcomputing , October 1980 21 




The TRS-80’s Color Computer , Model III and Pocket Computer. 


Lancaster, PA 17604. Reader Service number 
480. 


Three New Computers 
From Radio Shack 

Radio Shack, 1800 One Tandy Center, Fort 
Worth, TX 76102, recently unveiled three new 
TRS-80 computers: Model III, Pocket Com- 
puter and Color Computer. 

The TRS-80 Model III desktop computer is 
designed for more data storage, greater versa- 
tility and higher computing speed. It is housed 
in a single cabinet that includes a 65-key key- 
board, 12-inch high-resolution video monitor, 
power supply and space for up to two built-in 
double-density disk drives. Available in several 
configurations, it is priced from $699 for the 4K 
version and is expandable to 32K with 313K of 
disk storage for $2495. Model III BASIC is 
compatible with most Model I programs. 

The TRS-80 Pocket Computer features a 
large 24-character LCD display with English 
language prompting and BASIC program- 
ming. It includes 1 .9K RAM that retains infor- 
mation for the 300-hour life of its internal bat- 
teries. The six-ounce, seven-inch-long pocket 
computer can be used as a calculator to edit, 
store, review and place numbers in mathemati- 
cal equations with up to 15 levels of parenthe- 
ses. Tapes can be loaded with an optional cas- 
sette interface and may also be used to store 
programs and data. Price is $249.95. 

The Color Computer features high-resolu- 
tion color graphics using any home color TV as 
a video monitor and instant-load Program 
Paks. It has a 53-key typewriter-type keyboard, 
a screen format of 16 lines, 32 characters per 
line, graphics array from 32 x 64 to 196 x 256, 
1500 baud cassette interface and RS-232-type 
serial interface. In addition to using the plug-in 
Program Paks, you can program the computer 
in BASIC and control the color graphics, 
sound, data manipulation and storage. User 
programs and data may be stored on an option- 
al cassette recorder. Utilizing its built-in RS- 


232C serial interface, it can serve as a TRS-80 
Videotex terminal with optional software and 
modem. The 4K RAM, 8K ROM version sells 
for under $400. Reader Service number 482. 


TRS-80 Lowercase Modification 

The TRS-80 lowercase hardware modifica- 
tion from Integrated Service Systems, Inc., 
101 1 West Broadway, Minneapolis, MN 5541 1 , 
includes a printed circuit board that connects to 
the CPU board through a ribbon cable and sev- 
eral wires. You have to remove a 2102 video 
RAM and install a socket in its place for the rib- 
bon cable. This is not for the novice in soldering 
iron techniques. It is very easy to lift an etch by 
applying too much heat. I suggest having a pro- 
fessional do the installation, unless you are ex- 
perienced with the tools of the trade. The in- 
structions for installation come in a step-by- 
step format and are easy to follow. 

The modification allows 32 additional 
graphics characters and an indicator in the low- 
ercase mode. Lowercase characters feature 
pseudo descenders. The modification comes 
with software drivers on cassette in 4K, 16K, 
32K and 48K format. The cassette I received 
had a bad 16K dump, so I had to use the 4K to 
look at the operation of the mod. The drivers 
were single dumped on only one side of the 
tape. I would like to see at least one set of driv- 
ers dumped on each side of the tape to give you 
a second chance if one of the dumps is bad. 

The driver to activate the mod is unique. I 
tried the mod with several other drivers (one 
was called a universal driver) without finding 
any compatibility. You have to use the supplied 
driver, which will have to be incorporated into 
any word-processing software you buy for your 
system. The professionally constructed hard- 
ware modification is one of the cleanest I have 
seen. However, I wish the mod worked with a 
more universal type of driver. Price is $41.95. 
Reader Service number 475. 

Edward Umlor 
Fitzwilliam, NH 




The Gimix two-port and eight-port serial I/O 
boards. 


6800/6809 I/O Boards 

The Gimix 2 Port Serial I/O board has two 
independent RS-232-compatible I/O ports, 
with handshaking, on a single 30-pin board. It 
features jumper-programmable connector 
pinouts for easy cabling, independent baud rate 
and interrupt jumpers for each port and the 
6850 ACI A. The board is compatible with both 
the SS-50 (four addresses per I/O slot) and SS- 
50C (16 addresses per slot) bus configurations. 
Price is $128.43. 

The Gimix 8 Port board features eight in- 
dependent RS-232-compatible I/O ports on a 
single 50-pin board. It includes DIP-switch 
selectable baud rates for each port, extended 
address decoding for the SS-50C bus, selectable 
interrupts and the 6850 AC1A. The board is 
available with an onboard baud rate generator 
for baud rates up to 38. 4K baud. Price is about 
$300. 

Gimix, Inc., 1337 West 37th Place, Chicago, 
IL 60609. Reader Service number 481. 


Digital Music Synthesizer 

MusicSystem is a 16-voice digital synthesizer 
that permits the creation of the sounds of real 
musical instruments for the Apple 11. The gen- 
eration of sounds is accomplished through fully 
programmable waveforms, envelopes and am- 


22 Microcomputing, October 1980 







Mountain Computer’s MusicSystem. 


plitudes for each musical “voice.” 

Provided with the hardware system is soft- 
ware for editing and playing musical composi- 
tions. The Editor program permits graphical 
input of sheet music utilizing standard music 
notation. The player program permits poly- 
phonic performance of musical compositions. 
Stereo output is possible through the stereo am- 
plifier and speakers or directly off the card with 
stereo headphones. Price is $545. 

Mountain Computer, Inc. (formerly Moun- 
tain Hardware), 300 Harvey West Blvd., Santa 
Cruz, CA 95060. Reader Service number 477. 


132/80 Column Printer 

The MS-204 is a bidirectional, 9x7 dot 
matrix printer that accommodates 40, 66, 80 or 
132 characters per line. It features a print head 
life of 100 million characters, a 125 cps print 
speed and a throughput print speed of 63 1pm. 
The adjustable sprocket feed mechanism al- 
lows use of forms from 2.5 to 9.5 inches wide, 
with loading from either the bottom or rear. A 
full 96 ASCII set permits printing upper and 
lowercase characters that can be expanded for 
double width fonts in boldface. The VFU (ver- 
tical format unit) provides pre-programmed/ 
programmable tab positions, top of form and 
bottom of form. 

The MS-204 is compatible with TRS-80, Ap- 
ple, PET, Sorcerer or any other Centronics- 
type system. Price is $795. 

Matchless Systems, Dept. 7, 18444 South 
Broadway, Gardena, CA 90248. Reader Ser- 
vice number 479. 



Matchless Systems’ 132/80 column printer. 


Anadex Line Printer 

The DP-9500 is a dot-matrix line printer with 
one of the nicest executed designs I have seen. 
The unit is light and easy to carry from one set- 
up to another. It features built-in parallel, serial 
and current loop interfaces, as well as two type 
fonts (9x9 and 7x9) for 10, 12 or 13.3 charac- 
ters per inch and six or eight lines per inch. 
Double width format is also available in both 
fonts. Speed ranges from 150 cps to 200 cps, de- 
pending on the type selected. Graphics are indi- 
vidual dot addressable in a 7 x 1 format. All pa- 
rameters (except I/O format) are software se- 
lectable, as well as switch selectable. The 
printer will handle edge-punched paper from 
1.75 to 16.875 inches. 

It takes only a few minutes to unpack and set 
up this printer. Since it was already selected for 
parallel (Centronics-format) operation, the 


Braille Translator 

The DS Micro Translator is a microcomput- 
er-based, word -processing and braille-translat- 
ing system designed for use by schools, univer- 
sities, agencies and businesses that serve and/or 
employ blind persons. The system provides for 
both automatic translation of text to braille and 
conventional, general office word-processing 
tasks. The system permits a sighted person with 
no knowledge of Standard English Braille, 
which is a complex, semiphonetic code, to enter 
and edit material from newsletters, memos and 
class notes to full-length books. Entered text is 
automatically translated and either formatted 



The DP -9500 Line Printer from Anadex. 


printer was hooked up to a TRS-80 word-pro- 
cessing system. The printer performed correctly 
the first time out. The ready line holds data 
from going to the printer prematurely, so that 
all characters were present. 

The print quality in both fonts is crisp and 
clear. A lever, with detent stops, at the left side 
of the carriage controls the distance of the print 
head from the platen. Just set the lever for max- 
imum separation to load the paper more easily, 
and then set it back for the correct impact pres- 
sure. This is a much better arrangement than 
the fixed gap method used by most printers. 

The operation was flawless, except for incor- 
rect perforation skip on each new page. This 
might have been caused by paper drag as the 
paper came out of its box. When I adjusted the 
skip setting from one inch to half an inch, there 
wasn’t any paging problem. 

I recommend this printer as an excellent ad- 
dition to any system. It is fast, clean and com- 
patible with any system currently on the mar- 
ket. 

Anadex, Inc., 9825 De Soto Ave., Chats- 
worth, CA 91311. Reader Service number 476. 

Edward Umlor 
Fitzwilliam, NH 


by the computer to produce high-quality braille 
copies of the material or formatted without 
translation for equivalent print copies. The 
micro translator renders text into braille at the 
rate of more than 300 characters per second. 

For further information, contact Duxbury 
Systems, 56 Main St., Maynard, MA, 01754. 
Reader Service number 489. 


Z-80 Data Base Management System 

Target /80 is a data base management system 
for Z-80 microcomputers from Condor Com- 


NEW SOFTWARE 


Microcomputing , October 1980 23 



JijrHr 


WMM 

r:*i S :T.i L- 





APF’s Space Destroyer for the Imagination 
Machine. 


puter Corporation, 3989 Research Park Drive, 
Ann Arbor, MI 48104. It contains many of the 
features of Condor’s DBM-I and is designed 
for transaction processing applications. Ap- 
plications, developed using a nontechnical 
command language, can be created for person- 
nel, accounting, inventory or other business 
reporting requirements. The new version uses 
19 commands, including relational operations 
for selecting, sorting, appending or posting 
data. Target/80 is compatible with most Z-80 
microcomputers with at least 48K RAM run- 
ning under CP/M operating systems. Price is 
under $700. Reader Service number 494. 


General Ledger System 

GL, a general ledger program for the 
TRSDOS 1.2 on the TRS-80 Model-II, pro- 
vides immediate financial information for your 
company by keeping a record of all financial 
transactions. Features include double entry ac- 
counting, ISAM and a full 80-column screen 
display. It is flexible, interactive, menu-driven 
and provides automatic integration with A/P, 
A/R and payroll programs. It requires a 
132-column printer, a dual disk system and 64K 
memory. The $129 price includes a reference 
manual, an installation guide, 15 programs and 
sample data files on an eight-inch diskette. 

Micro Architect, Inc., 96 Dothan St., Arling- 
ton, MA 02174. Reader Service number 488. 


Loan Analysis Software 

Personal Loan Analysis is a new software 
package for the Atari 400 and 800 systems that 
consists of five menu-selected programs: 

Loan Repay — allows the comparison of dif- 
ferent interest rates, payment periods and pres- 
ent values. 

Number of Time Periods — computes the time 
required to pay back a loan given a set monthly 
payment amount and a fixed interest rate. 


Fresent Value— computes the amount of a loan 
available if the consumer knows his maximum 
monthly payment. 

Amortization — computes all pertinent data for 
the repayment of a loan. 

Add -on/ Annual Percentage Rate Conversions 
— converts the add-on rate to the annual per- 
centage rate or the annual percentage rate to the 
add-on. Cassette price is under $15. 

Zapata Microsystems, PO Box 401483, Gar- 
land, TX 75040. Reader Service number 493. 


Video Space Game 

Space Destroyer is a new cassette video space 
game for the Imagination Machine from APF 
Electronics, Inc., 444 Madison Ave., New 
York, NY 10022. It tests your commandeering 
skills to maneuver a squadron of three space 
destroyers against a continuous wall of phasor- 
firing aliens. One or two players may enter the 
battlefield. Points are awarded and displayed 
on the screen. Sound effects heighten the action 
of the contest. Price is $19.95. Reader Service 
number 495. 


CP/M Software Guide 

The CP/M Software Summary Guide , a list 
of major software used on most CP/M sys- 
tems, includes summaries of the CP/M 
operating system, Microsoft BASIC, CBASIC 
and the CP/M utilities DESPOOL, MAC and 
TEX. Commands and utilities are explained 
briefly with examples. This 60-page booklet 
organizes features alphabetically, so you can 
find an explanation quickly rather than page 
through various function sections. Price is 
$3.75. 

Rainbow Associates, PO Box 35, Glaston- 
bury, CT 06025. Reader Service number 491. 


Basic-Aid for CP/M 

Basic- Aid, for programmers who work with 
Microsoft BASIC, allows one or two key en- 
tries of over 40 BASIC statements and com- 
mands. It also has nine user-definable buffers 
for frequently used code (two with 64 
characters and seven with 16 characters). It in- 
cludes a configuration program that allows it to 
be placed anywhere in memory. The program 
will run on any 8080 or Z-80 CP/M system and 
is available on Micropolis five-inch and stan- 
dard eight -inch disks. 

Mendocino Software, PO Box 1564, Willits, 
CA 95490. Reader Service number 492. 


Star Trac BASIC Monitor 


The Star Trac extension to North Star 
BASIC 5.1 offers the first fully interactive 
debug monitor for any microcomputer BASIC. 
It allows you to insert a breakpoint in the 
BASIC program and assume full keyboard 


control over subsequent execution. The most 
powerful feature of Star Trac is its ability to 
assert a conditional breakpoint, which allows 
control over a BASIC program to be assumed 
when a specified program symptom occurs, 
such as when the value of a variable is altered. 
This monitor allows complete control over the 
BASIC program without any modification to 
the program itself. Price is under $100. 

Allen Ashley, 395 Sierra Madre Villa, 
Pasadena, CA 91107. Reader Service number 
497. 


Dental Accounting System 

Now your office computer can handle com- 
plete dental billing with Micro Dent, a dental 
billing system that will automate your billing 
procedure, improve turnaround of insurance 
form processing and provide mail-list and in- 
formation processing for your patient records. 
This program keeps track of services rendered, 
bills patients and/or insurance organizations, 
handles insurance pre-authorization and pre- 
pares statements. It handles insurance form 
types, or you can easily modify the formats that 
are used in the system if new forms are added or 
existing forms are altered. 

You can sort through patient information 
and prepare a mailing list using 15 sort criteria 
keys. With a form letter merge utility, you can 
send personalized form letters, dunning mes- 
sages or notices to selected patients. Micro Dent 
(under $1000) is available in most popular disk 
formats for CP/M-based systems. 

Micro DaSys, PO Box 36275, Los Angeles, 
CA 90036. Reader Service number 487. 


Apple II File Management System 

Filemaster II is a file management system for 
storing, classifying, manipulating and retriev- 
ing data in the Apple II microcomputer. The 
system includes four Applesoft programs — File 
Designer, Search and Retrieval, Sort Informa- 
tion and File Converter. Program features in- 
clude computed numeric fields from user- 
entered formulas, provisions for creating a sub- 



MicroDaSys * dental billing system. 


24 Microcomputing, October 1980 




Announcing 
“Hellfire 
Warrior” 


“Hellfire Warrior.” Really not for everybody: newcomers to 
Dunjonquest should begin with something easier. Here the 
monsters are deadlier, the labyrinths more difficult, the levels 
far more challenging... 


But for the experienced Dunjonquest game player there are more 
command options, more potions (131), more magical items (including — 
at last — magical armor), more special effects, more surprises. And an 
innkeeper, an armorer, apothecary and magic shops. 

ft a ■ • In part a sequel to The Temple of Apshai. up until now the greatest 

of all the Dunjonquest games. Hellfire Warrior can also be played 


completely on its own. 


new Dunjonquest 
computer game... 
that’s really 
not for 
everybody: 
Beginners 
are likely to 
be gobbled up 
in the first 
room. ..and 
there are over 
200 rooms on 
four levels 


Now the character you've created, re- 
presenting the highest level of role- 
playing to date, can explore the four 
new lower levels: 



Level 5— "The Lower Reaches 
of Apshai." With the giant in- 
sects and other nasties that swarmed through the 
upper levels of Apshai. With rooms your hero can 
get into, but not out of. 

Level 6— "The Labyrinth." The only exit is hidden 
within the Labyrinth. And' man-eating monsters can thwart 
your hero. 

Level 7— "The Vault of the Dead."... And of the 
undead — skeletons, ghouls, mummies, specters... 
invisible ghosts — lurking in the rooms, doors, secret 
passages, ready to reduce your hero to a pale shadow of 
himself. Permanently. 

Level 8— "The plains of Hell." In an Underworld of 
lost souls and shades of dead, of dragons and fiery 
hounds, of bottomless pits and blasts of hellfire. our 
hero must rescue the beautiful warrior maiden lying 
in enchanted sleep within a wall of fire. And bring 
her past unbelievable dangers and monsters . . . 
even Death itself... to sun and air and life 
itself. 


Hellfire Warrior. The most exciting game yet 
from Automated Simulations, the leading producer of 
computer fantasy games. 

Guaranteed: If it’s not the most exciting computer 
game you’ve played, return it within ten days for a 
complete refund. 

Available on disk for the Apple II and Radio 
Shack’s TRS80. or on cassette for the TRS80 
and for the Commodore PET. The cassette: 

$24.95; the disk: $29.95. Complete with a 
magnificent instruction manual. Some of 
the drawings in the manual are reproduced 
here (in greatly reduced scale). 

Use the handy coupon or, if you wish to order by MasterCard or VISA, use our toll-free 
phones: In the United States: operator 861 (800) 824-7888: In California: operator 
861 (800) 852-7777; In Hawaii and Alaska: operator 861 (800) 824-7919. 



AUTOMATED SIMULATIONS, INC. 

P.O. Box 4247, Dept. DH2 
Mountain View, CA 94040 ^55 


□ Yes, I want Hellfire Warrior. On a satisfaction-guaranteed/ 
full-money-back policy. Please send me the Hellfire Warrior on: 

Disk for TRS-80 (32K. TRSDOS) @ $29.95 $ 

Disk for Apple (48K with Applesoft in 

ROM) @ $29.95 

Cassette for TRS-80 (16K. Level II) 

@ $24.95 

Cassette for Commodore PET (32K. old or 

new ROMS) @ $24.95 —————— 


Sub Total :? 

Plus shipping & handling $1.00 each 

•Plus sales tax for California residents 

TOTAL $ 

□ I enclose my check in the amount of i 

□ Please charge to my □ VISA or □ MasterCard account 

My card no. Expires 

Signature 

Name 

Address 

City/State/Zip 

’California residents: please add 6% or 672% sales tax as required. 



□ Please send me your complete catalogue of computer and board fantasy games. 


v* Reader Service index— page 241 


Microcomputing, October 1980 25 


file onto a second disk and retrieval of both ac- 
tive and nonactive records, as well as special in- 
put routines and error trapping. It requires 
48K, Applesoft ROM and a disk drive. Price is 
under $100. 

Rainbow Computing, Inc., Garden Plaza 
Shopping Center, 9719 Reseda Blvd., North- 
ridge, CA 91324. Reader Service number 4%. 


TRS-80 Assembly-Language 
Development Package 

Racet Computes, 702 Palmdale, Orange, CA 
92665, has recently released an extended 
development package for Model II assembly- 
language programmers. The package includes 
the following programs: 

Macasm— an editor/assembler that includes 
macro conditional assembly capabilities, in- 
memory compiles and debug facilities. Source 
programs can be saved on disk and subsequent- 
ly reloaded into memory. A range of lines can 
also be loaded or saved. 

Szap — provides the capability to read and 
modify any sector on a diskette and provides a 
generalized facility for copying any number of 
sectors from one area (or disk) to another. 
Dis2— a system for the disassembly of Z-80 
machine-language code, which can be from 
memory or from a standard DOS load module 
from disk. Price is $125. Reader Service 
number 485. 


ESP Lab 

Reviewed by Eric Maloney , 

Microcomputing staff 

It was only a matter of time before someone 
came out with a computer program to test 
extrasensory perception. But while Manhattan 
Software, Inc. (PO Box 5200, Grand Central 
Station, New York, NY 10017), claims that ESP 
Lab is designed for “serious research,” the 
program will have to undergo some careful 
scrutiny before it can be accepted as a legiti- 
mate tool for scientific study. 

ESP researchers have spent years trying to 
establish the credibility of their work. While 
they have an endless supply of anecdotal evi- 
dence that we humans have extrasensory pow- 
ers, proving it in the lab has been another story. 
Trying to isolate and identify ESP to the 
satisfaction of the scientific community is like 
trying to catch smoke rings with a butterfly net . 
A computer only adds another variable to be 
accounted for. 

ESP Lab ($9.95; for the 16K TRS-80, Level 
II) tests for three types of ESP— telepathy, 
clairvoyance and precognition— and for 
telekinesis. Except for the telepathy test, the 
program can be used by two people— a tester 
and a respondent — or alone. 

The ESP tests are based on the experiments 
of Dr. J. B. Rhine, whose work at Duke 
University was instrumental in making ESP the 
popular subject it is today. Rhine’s experiments 
were done largely with a deck of 25 cards, each 


marked with a symbol. The deck included five 
each of squares, circles, triangles, ovals and 
double-wavy lines. 

ESP Lab simply substitutes the computer for 
the cards. In the telepathy test, the computer 
randomly selects a symbol, and the keyboard 
operator tries to mentally project an image of 
the symbol to another person. In the clairvoy- 
ance experiment, the computer selects a symbol 
and presents a question mark; the tester or re- 
spondent enters the guess. In the precognition 
test, the respondent tries to guess what symbol 
the computer is going to select. In all three 
cases, after 25 symbols, the computer displays 
the guesses and correct answers. 

Several problems become immediately evi- 
dent. To begin with, while the program is based 
on the Rhine cards, the symbols are actually ab- 
stractions generated inside the computer. The 
respondent thus has no physical object to focus 
on. This may or may not be important to some- 
one with extrasensory abilities, but has to be a 
consideration for the serious experimenter. 

Also, if the experimenter is self-testing, the 
tendency is to guess the keys that represent the 
symbols, rather than the symbols themselves. 
Again, this may not be critical, but researchers 


CLAIRVOYANCE 

TRIALS 

SUBJECT: ERIC MALONEY 

DATE: 7/14/80 

TRIAL # 1 



SYMBOL 

RESPONSE 

1 

CROSS 

TRIANG 

2 

LINES 

SQUARE 

3 

LINES 

SQUARE 

4 

OVAL 

LINES 

5 

CROSS 

OVAL 

6 

CROSS 

LINES 

7 

SQUARE 

TRIANG 

8 

TRIANG 

CROSS 

* 9 

CROSS 

CROSS 

* 10 

CROSS 

CROSS 

11 

CROSS 

OVAL 

12 

TRIANG 

LINES 

* 13 

SQUARE 

SQUARE 

* 14 

SQUARE 

SQUARE 

15 

LINES 

TRIANG 

16 

TRIANG 

LINES 

17 

LINES 

SQUARE 

18 

OVAL 

TRIANG 

19 

SQUARE 

TRIANG 

20 

SQUARE 

LINES 

21 

CROSS 

OVAL 

* 22 

SQUARE 

SQUARE 

23 

TRIANG 

SQUARE 

24 

CROSS 

LINES 

25 

CROSS 

SQUARE 

CORRECT RESPONSES: 5 

PRECOGNITION 

SCORE : 7 

POSTCOGNITION SCORE: 6 

Sample run 1. The program lists the sym- 

bols selected by the computer, and the sub- 

ject ’s responses. The precognition and post- 

cognition scores indicate the number of 

times the receiver correctly guesses the pre- 

vious or next symbol. 



can’t dismiss the possibility that it may in- 
fluence test results. 

The telekinesis test is better suited to com- 
puter use. A box with a dot in the middle ap- 
pears on the screen. The user indicates whether 
he will try to mentally influence the dot to go 
left or right. Eventually, the dot moves to one 
side or the other. If the dot moves to the in- 
dicated side more than half of the time, this is 
possible evidence of telekinesis. 

No matter what the test, the serious student 
is faced with major questions concerning the in- 
fluence the computer has on the results. It is im- 
possible to say whether electrical energy has an 
effect on telepathic abilities. Some scientists 
have hypothesized that telepathy might actually 
be carried on electromagnetic waves. And any- 
one living near high-tension lines can testify to 
the deadly impact electricity can have on plant 
and animal life. 

From here, we get into even more esoteric 
questions. Might some people be more compat- 
ible with computers than others, and thus be 
better receivers? Could some computers be bet- 
ter transmitters than others? Can a computer 
have ESP? 

Most of these questions will concern the seri- 
ous experimenter only. For others, ESP Lab 
has a variety of useful applications. For exam- 
ple, it is ideal for the psychology or math stu- 
dent studying probability and statistics, and 
makes a perfect demonstrator for a class in- 
vestigating ESP and the mind. In both cases, 
students can run through the tests quickly and 
easily, and can get printouts for permanent 
records or future analysis. 

This program is also good for the curious in- 
dividual who simply wants to make an informal 
study of the subject. A casual investigation can 
often be more productive than one conducted 
in a more formal setting. 

Finally, ESP Lab is an excellent party game. 
It has the appeal of keno or roulette — no mat- 
ter whether you believe in ESP or chance, there 
is always the urge to try beating the odds. 

By the way, you can test yourself for teleki- 
nesis without this program. Using your mental 
powers, try turning your computer off. 

Reader service number 499. 


TRIAL RESULTS SUMMARY 


# 

CORR. 

PRECOG POSTCOG 

1 

5 

7 

6 


2 

2 

5 

3 


3 

2 

6 

3 


4 

9 

6 

4 


5 

4 

4 

8 


6 

7 

4 

4 


7 

3 

3 

3 


8 

4 

8 

6 


9 

3 

4 

4 


10 

6 

5 

6 


AV. 

CORR. 

RESPONSES: 


4.50 

AV. 

PRECOG SCORE: 


5.20 

AV. 

POSTCOG SCORE: 


4.70 

Sample run 2. 

Trial results summary. A 

score of 5 is considered average. 




26 Microcomputing, October 1980 


LETTERS TO THE EDITOR 


Teachers and Computers 

As noted in your June issue of Kilobaud Mi- 
crocomputing , the area of investigating the 
possibilities and potentials of microcomputers 
in the classroom is still “virgin,” in that the in- 
dustry hasn’t sincerely begun to address the as- 
pect of microcomputers as instructional tools. 
Granted, there is an abundant source of soft- 
ware for drills and practice. For public school 
systems, this may be sufficient in itself, if only 
to relieve the strains of a high student -to-t each - 
er ratio. In our school, with a low (15:1) ratio, 
such drills are considered superficial to the 
learning process. A nucleus of parents and 
faculty has just formed to investigate the 
possibilities and potentials of microcomputers 
in the classroom. 

While a handful of parents recognize the im- 
portance of introducing human-to -processor 
communication to our children at as early an 
age as possible, we’re constantly confronted 
with the question of how we should implement 
the processor into the curriculum as an instruc- 
tional tool. Specifically, we envision utilizing 
the computer(s) for an introductory course in 
programming (primary unit). An area of appli- 
cation, sidestepped too long, is simulation. We 
would like to see the computer used to reinforce 
the learning process through automated prob- 
lem analysis or trend analysis based on vari- 
ables that are input. 

We are now at the point where we (faculty 
and parents) would like to touch bases with in- 
dividuals who have successfully gone this route. 
If those in the field of education or the micro- 
computer industry can supply us with concrete, 
logical steps toward implementation of such a 
program, it would be sincerely appreciated. 

Art Lane 
78 Whitney Dr. 
Meriden, CT 06450 

William Murdoch 
60 Schooner Lane 
Meriden, CT 06450 


Counting 0,1,2. . . 

In “Questions and Answers on Memory De- 
vices’’ (July 1980, p. 164), the author has done 
a disservice to novice computerists with his 
answer, “. . .just because,’’ referring to a ques- 
tion about track 0. 

As a legitimate question, it deserves a similar 
answer. Zero is the track’s identifying number, 
not a track count. Computerists, like everyone, 
count the first item as one; however, that item’s 
“name’’ is often zero for a good reason. In any 


number system, using 0 to identify an item al- 
lows you to distinguish, with a single digit, a 
number of items equal to the base (ten items for 
decimal, 16 for hexadecimal, eight for octal). 
Ignoring 0 requires the use of a second digit, 
hence, more memory, to identify the same 
number of items. 

Granted, with 77 tracks, this point is ob- 
scure; however, the consistent application of 
this convention leads to some degree of memo- 
ry conservation. 

P. V. Piescik 
Wethersfield, CT 

Mr. Piescik’s point is well taken. Nonethe- 
less, I don’t think many people use the zero 
numbering convention for the sake of conserv- 
ing memory. In most cases, either approach 
will work equally well. (Referencing 77 tracks 
on a floppy disk, for instance, will require 
seven bits, regardless of whether the first track 
is 0 or 1 .) 

Although my original answer may have 
seemed flippant, it is essentially correct. The 
zero numbering convention is simply an estab- 
lished design practice that novices might as well 
go along with. 

David Price 
Midlothian, VA 


A Better Terminal 

Frank Derfler’s OSI C1P terminal program 
(“Dial-up Directory,’’ July 1980, p. 68) is most 
interesting and useful. Regarding the RS-232C 
information, the signal voltages are allowed to 
be between ± 5 and ± 25 V dc. Positive voltage 
is a logic 0 on the data lines and a logic 1 on the 
control lines. The need for an external TTL-to- 
RS-232C interface circuit between the OSI out- 
put and the modem input is made unnecessary 
by cutting the trace identified as W 10 on the foil 
side of the board. A negative 5 volts is then con- 
nected to J3, pin 7 (and not to the modem). 
This will allow positive and negative voltage 
swings as required by the RS-232C definition. 

John G. Ruff 
Minnetonka, MN 


SWTP Is No Fun 

Why doesn’t anyone make any “fun” soft- 
ware for the SWTP 6800? Business programs, 
operating systems, file sorting and manage- 
ment and letter addressing are available for us 
home types with small systems, but we’re not 
all serious, you know. 

Those TRS-80, Apple and PET guys have all 


the fun with Chess, Adventures, Flight Simula- 
tion and Interlude. There is nothing available 
for the SWTP in this vein, except some old TSC 
programs that are quite simplistic by today’s 
standards. In any event, a very finite number of 
these are extant, with nothing new in sight. 
Now that our beloved SWTP has all but aban- 
doned us to their fancy 6809 system, we are 
adrift in space. 

Not that I would trade my 6800 for anything 
on the market. 1 like to be able to open the cage 
to view boards that even an idiot would under- 
stand. I like the 6800’s easy-to-use instruction 
set. My primary interest is hardware, and the 
SWTP is great for those of us who want to 
build special boards and otherwise tinker. 

More of us SWTP types should write to 
thank Kilobaud Microcomputing for their sup- 
port. Listen, SWTPers, if Microcomputing 
stops supporting us because they think we don’t 
care, all we’ll have is either a specialty newslet- 
ter that thinks that everyone has a disk system 
with gigabytes of memory and otherwise pub- 
lishes gossip or all those pretty, colorful, com- 
mercial magazines like you-know-who. And 
what about the Gimix and Smoke Signal types? 
Are they only interested in file sorting and man- 
agement? Wouldn’t they also like to play 
games, even just a little? 

Lest all the other types smirk, the handwrit- 
ing is on the wall. TRS-80 Level 1 is soon going 
to be in the same boat. Let them try a turn at the 
bailing bucket. 

John Tavares 

San Jose, CA 


Pay Now or Pay Later 

John A. Bryant’s article and program are 
well-written (“Calculating Interest Rates,” 
July 1980, p. 134). However, I believe there is a 
flaw in the program, because it doesn’t output 
the correct interest rates. 

If I borrow $1000 from the bank at six per- 
cent for one year, the interest is $60. My 
monthly payment is $1060/12, or $88.33. If I 
enter this data in the program (principal, 
$1000; monthly payment, $88.33; and term of 
one year), the computer says the interest rate is 
10.89 percent. 

Ken Walters 
Red Ash, VA 

It does look like six percent, Ken, and, in 
fact, when I was a young fellow it was called a 
six percent loan. The Truth in Lending Act 
changed that and requires that the annual per- 
centage rate (APR) be given on a loan. In your 
example, the APR is 10.89 percent, just as the 
computer said. The loan would have been a six 


Microcomputing, October 1980 27 


percent loan if there were no monthly payments 
and you simply paid back a lump sum of $1060 
a year after borrowing $1000. But when you 
pay it back in monthly installments, you don’t 
have the use of the entire sum for the full year, 
so the effective interest rate is higher. Thanks 
for your compliments on the program and arti- 
cle; I probably should have explained APR. 

John A. Bryant 
Holcomb, NY 


Shopping Around 

I am a professional writer who is keenly and 
sincerely interested in buying a word-process- 
ing system. After reading many books and 
magazines on the subject to attain a smattering 
of understanding of the possibilities of what’s 
out there in the market, I stuffed my check- 
book into my pocket and eagerly set out to buy. 
Two months later, after visiting a dozen or so 
computer stores in Toronto and Buffalo, I still 
haven’t bought a system, simply because no- 
body will take the trouble to sell me one. 

It is my finding that the staff and owners of 
computer stores come in two types. Type one 
sneeringly bedazzles the tyro shopper with an 
incomprehensible jargon of “forty-eight -kay- 
bus-byte-zed-eighty-menu-interface-vabna- 
graph!” Type two asks “Whadaya mean, word 
processing? Wanna see the video games? And 
it’ll do your income tax really neat!” 

I respectively ask owners of computer stores 
to look a little more closely at the way in which 
their sales staff responds to customers to ensure 
that their staffs acknowledge that a good deal 
of would-be buyers drift out the door from lack 
of adequate service. Finally, ask your sales staff 
to try a little harder than a perfunctory “You’ll 
need that blue box over there and that black 
dingus there, and the rest’s in this manual.” 
Anybody want to sell me a word-processing 
computer? Please? 

Sidney Allinson 
24 Ravencliff Crescent 
Scarborough, Ontario 
Canada 

It ’s little wonder that some computer stores 
are having difficulty. How many potential 
users have been turned off to micros because 
of treatment like you received? How many 
sales have been lost? — Editors. 


Computers on the Air 

Aficionados of 6502 microprocessor person- 
al computers have new ways to exchange com- 
ments and information. Three new radio nets 
on amateur radio frequencies have been an- 
nounced. 

An East Coast Apple Net now operates on 
Saturday mornings at 1300 GMT (9 am, East- 
ern Daylight Savings Time) on or near 7260 
kHz. Transmission mode for this 40 meter net 
is lower sideband, with W1UKZ in Scituate, 
MA, as net control. 

In the greater Boston area, there is a new 2 


Industrial quality components 
for S-100 system builders, from 
California Computer Systems. 


2422 Disk Controller. Single ^ double 

density controller for up to four 5*4" or 8” 
single-sided drives, or two double-sided drives. 
Shipped with CP/M 2.0, the controller reads 
and writes IBM-standard single density. 
Automatically determines disk density— 
single or double. Supports PerSci auto eject, 
plus fast-seek for voice coil systems. 

2810 Z80 CPU Board. Capable CPU for S-100 
Systems operates at 2 or 4MHz, is fully Altair/ 
Imsai compatible. Z-80 monitor is available 
separately. Includes auto addressing to 
4K boundaries, plus a serial port for serial 
devices, including terminals and printers. 
Supports both front-panel operation and 
power-on memory jump, plus wait-state gen- 
eration for slower memories. Compatible with 
proposed IEEE S-100 standards. 


meter net, on the Norwell repeater (144.65/ 
145.25 MHz) for those interested in Apple 
computers. W1UKZ, WA1ZKB and others act 
as net control. This net is called to order at 8 pm 
local time, Wednesday evenings. 

A new Atari International Computer Net 
now meets at 0100 GMT, Tuesdays (9 pm 
EDST, Monday evenings) on 20 meters. Look 
for this net on upper sideband around 14.329 
kHz. W1UKZ in Scituate, MA, acts as net con- 
trol. 

Aside from conversation about computers in 
general and the subject computers in particular, 
these nets will act as funnels for as much offi- 
cial information about computer developments 
as can be gleaned from the manufacturers. Pro- 
gram swapping via the mails is undertaken, 
with projected exchange via radio anticipated 
as more and more computer owners interface 
with their radio equipment. 

David Allen 
Scituate, MA 


Designing Alphabets 

Your design for a computer -readable hand- 
written alphabet (“Publisher’s Remarks,” 
August 1980, p. 6) is similar to a project that I 
have been working on for several years. We 
spent considerable time and effort developing a 
new method of handwriting at an early child- 
hood Montessori school (Ashdon Hall in At- 
lanta, GA). As a side project, using the same 
pedological techniques, I developed an alpha- 
bet design that required a 12-segment LED for 
electronic display, but readability is easy for the 
average, untrained person. Readers who are in- 
terested in this project can contact me. This 
method of handwriting for computer recogni- 
tion could be taught in all elementary schools as 
part of teaching handwriting. 

Hugh S. Hunt 
12219 River Road 
Potomac, MD 20854 


Identifying PET ROMs 

I enjoyed “A ‘Personable’ Calendar” by 
G. R. Boynton (August 1980, p. 168). As he 
said, it is a program just waiting for you to per- 
sonalize. While some might criticize its lack of 
some of the programming niceties, I very much 
enjoyed the program, which did exactly what 
he set out to do. 

My comment does not apply specifically to 
his program, but to PET programs in general. 
Since CBM has chosen to have a few different 
ROM sets, we have to look out for the differ- 
ences, since not all PET programs will run on 
all PETs. It would help us true novices (not 
programmers or electronics types) if the pro- 
grams were identified for their ROM sets, so we 
would know whether to convert all POKE/ 
PEEK statements. 

Gerald Key 
Gahanna, OH 

Good idea, Gerald. Future PET authors, take 
note . —Editors. 


2032A 32K Static RAM. Fast static memory 
operates without wait states at a full 4MHz. 
Supports full and partial bank select, for 
expansion beyond 64K. Addressable in 8K 
blocks at 8K boundaries. Address and data 
lines are fully buffered, and there are no 
DMA restrictions. 

2016 16K Static RAM. Fully buffered board 
features 2114 static RAMs for +5v operation. 
Bank select available by bank port or bank 
byte, for system expansion beyond 64 K. 
Addressable in 4K blocks at 4K boundaries. 
LED indicators for board selection and 
bank selection. Available in 200, 300, or 450 
nsec versions. All versions support 4MHz 
operation with no wait states. 

2200A Mainframe. Rock solid, heavy gauge 
cabinet includes 12-slot, actively terminated 
S-100 motherboard, fan, and power supply. 
Fbwer supply features 105, 115, or 125 volt 
AC input power; provides +8vDC at 20 amps, 
± 16v DC at 4 amps. Available in five colors. 
Includes convenient, front mounted, lighted 
reset switch. 

2501 A Mother Board. 12 slots, actively 
terminated, with all S-100 connectors included. 
Distributed power line bypass, low induc- 
tance interconnect— extremely low bus noise. 

Prototype Boards. Four high quality prototype 
boards: Solder Tail, Extender/Terminatoi; 
Wire Wrap, and Etch. 

P2802AA6502 CPU. Stand-alone CPU 
generates fully S-100 compatible I/O signals; 
executes 6502 machine language. Operates at 
2MHz; capable of DMA operation. 


Available nationally. 

California Computer Systems industrial 
quality S-100 products are available at over 
250 computer retailers. Volume customers 
should contact the marketing department at 
CCS. 

CCS. Industrial standards. 


28 Microcomputing, October 1980 



4 

B. 

We mass-produce S-100 
products to deliver industrial 
quality, at industrial prices. 

You systems builders who need top quality, full 
featured, workhorse S-100 building blocks at the most 
competitive prices now have a source. California 
Computer Systems. 


Industrial quality means top grade materials, com- 
ponents, and assembly, plus complete testing for absolute 
reliability. 

Industrial quality means solid designs, a full 
complement of the important features you require, and 
a product line that delivers performance. 

Industrial pricing comes from mass production. We 
buy at the right prices, and build in quantity, using 
state-of-the-art facilities and techniques. Including 
complete bum-in, for full performance right off the shelf. 

Our industrial point of view means you get higher 
performance, greater reliability, and lower prices. If these 
are features you would like to see in your S-100 system, 
see things our way. 

Because for serious users with serious uses for 
the S-100, these are the industrial standards. 



California Computer Systems 

250 Caribbean Sunnyvale, CA 94086 (408) 734-5811 


148 








ASK FOR 
OUR INSTANT 
DISCOUNT! 


CALL TOLL FREE 

U.S.A. 

1 - 800 - 521 -2764 

MICHIGAN 

1 - 800 - 482-8393 


WRITE TO: ^ 

“The Stocking Source” 
23995 Freeway Park Dr. 
Farmington Hills, Ml 
48024 


Buy Only From 
a “Factory Authorized 
Source” 


List Your 


PRINTERS 

Price Cost 

Okidata 

Microline 80 

S 945 ^S00 

Anadex Model 
DP-8000 

or DP-8000 A P . . 

. ,$1095.^Sil§ 

Anadex Model DP-9500 Ask for 


orDP-9501 $1650. Our Price 

Epson Model TX-80B Ask for 

Friction Feed ....$ 710. Our Price 

Epson Model TX-80B 
Tractor Feed & Ask for 

Graftrax $ 799. Our Price 

Epson Model Ask for 

MX-80 $ 699. Our Price 


INTERFACES 

Okidata Microline 80 
Tractor Feed. .$100. 

Okidata Microline 80 
FtS-232 Interface 
with 256 Character 
Buffer $200. 

All above Printers — 
Cable from Printer 
to TRS-80 $ 35. 

Epson-Serial Interface 
& Cable $ 90. 

Epson-IEEE 488 

Interface & Cable $ 80. 

Epson-Apple Plug-in 
Interface & 

Cable $110. 


WE HAVE n 
A FULL HOUSE "W — \ 


PRINTER STANDS 


Systems 
Furniture 
Universal 
Printer 
Stand 
without 
top, but 
with paper 
basket 
$ 120 . 


TRANSIENT CLIPPERS 


The ideal Line Voltage Transient Clipper from PDF 
protects against • High Energy Voltage Transients 
• On-Off Switching • Lightning Induced Transients. 
Model C-120Q (Other Models Stocked) $57.50 


30 Microcomputing, October 1980 




PROBATE 


debts 


YOCJR 

family 


inherit A ; 
TAXES 


James Owens 
Professor of Management 
American University School of Business 
Washington, D.C. 


Computerized 
Estate Planning 


This OSI program takes the tedium out of calculating and sorting 
the various options for the final settlement of your wealth. 


M any people spend a lifetime building 
an estate (often worth hundreds of 
thousands of dollars) only to let it go to 
waste at their death. They plan their lives 
successfully, but do little or no planning for 
the disposition of their tangible worth. 
Much of the estate is thus diverted into 
estate taxes, probate costs, administrative 
expenses and a legion of other costs, in- 
stead of being channeled efficiently — and 
mainly intact — to surviving loved ones. 


To avoid such problems, the responsible 
person plans for the inevitable event. He ex- 
amines his family’s future rationally, coolly 
and in ways that maximize the net estate 
actually received by intended beneficiaries. 
The financial community calls this estate 
planning, and anybody can handle its le- 
gion of complexities and mathematical 
computations with a small computer (and, 
of course, a lawyer). 

Estate planning is a must for all working- 


age people, not just senior citizens. A 
50-year-old man might suffer a sudden 
heart attack anytime, or a 30-year-old 
divorced mother might die in an automobile 
accident. In either case, an unplanned 
estate usually means hardship for sur- 
vivors, for whom they worked so hard during 
life. Given the obvious necessity for priority 
attention to a personal last will and estate 
planning, why do so many neglect such a 
vital matter? Three reasons, mainly: they’re 





Enter in 

Variable and 

Description of Variable 

line 

sample entry 


810 

Y = 1979 

Base year for all data entries and calculations 

820 

B = 50 

Wife’s age in base year 

830 

J = 51 

Husband’s age in base year 

840 

Tl = 20000 

“Death benefit” from husband’s retirement program 

850 

PL = 2000 

Annual increase in the value of Tl (above) 

860 

YD = 1999 

Estimated or assumed year of wife’s death 

870 

A = 150000 

Life insurance (except amount in line 840 above) 

880 

SA = 5000 

Total cash, checking accounts and savings in base year 

890 

SI = 1000 

Estimated or assumed future annual savings 

900 

HV = 50000 

Value of home in base year 

910 

P = .06 

General inflation (cost of living) rate for prices 

920 

K = .10 

Average rate of earnings (income) on invested funds 

930 

S4 = 500 

Widow’s Social Security monthly income in base year (if she were age 60 in base year 
and awarded maximum) 

940 

ET,E = 650,322 

Wife’s monthly expenses (if husband dies in base year) in two parts: those subject to 
inflation: home payment that is not 

950 

PR = 40000 

Mortgage (principal) on home in base year 


Table 1. List of data variables and sample data. 


too busy with the demands of a busy life to 
think about death; it is most unpleasant, if 
not traumatic, to confront the issue of one’s 
death and make cool, rational plans for it; 
and the arithmetic involved in estate plan- 
ning (calculating the projected income for 
survivors, varying incomes for varying in- 
surance amounts, effect of estate taxes, 
etc.) is too time-consuming and com- 
plicated. And yet, for many, the most 
critical act they will perform— or not per- 
form— in life will involve estate planning. 

If you have, or have access to, a comput- 
er (even a small one limited to just 4K of 
RAM memory), the program described here 
can easily remove the major obstacles to 
your estate planning. It does all the neces- 
sary calculations, evaluation of alternative 
plans and financial projections, quickly 
enough for the busiest executive or career- 
ist. 

Program Objectives 

The program is designed to project any- 
one’s net estate after taxes (as actually in- 
herited by survivors), as well as survivors’ 
monthly income, including Social Security 
benefits, for any assumed year of death of 
that person and for any number of years fol- 
lowing death. Yearly calculations include 
changing home value, equity in home, sav- 
ings and net worth. 

The prograrfi can also quickly reveal the 
minimum life insurance required for a par- 
ticular person and situation and the ulti- 
mate effect of inadequate or no life insur- 
ance. 

Finally, the program might prompt some 
readers to search out and organize vital sta- 
tistics about their finances and the data 
necessary if they are to be in control of their 
lives. 

Data Required 

I have kept data requirements to run the 
32 Microcomputing, October 1980 


program at a minimum, and they should be 
easily available to the user. (I permitted the 
program itself considerable complexity to 
keep data entry easy and convenient.) Six- 
teen data are all that need be entered into 
the data lines (Table 1), and most of these 
will be immediately accessible. You might 
have to examine your retirement program to 
determine its “death benefit” and annual in- 
crease in value (for lines 840 and 850); con- 
tact the Social Security Administration for 
the current (base year) amount for line 930 
and determine current monthly expenses to 
realistically project expenses for line 940. 

All other data are obvious (such as your 
age) or assumed (such as projected infla- 
tion rate in line 910). Enter these 16 data to 
run the program. (Table 1 includes sample 
data for a hypothetical, but realistic, case; 
program output for this case is displayed in 
Table 2.) Some of your data might be zero, 
as in lines 900 and 950, if you are renting 
rather than buying a residence; in many 
cases, line 840 and 850 will also be zero. 

The sample data used here assume the 
following: a husband (age 51) and wife (age 
50), with no dependent children, owning a 
$50,000 home with a $40,000 mortgage at 
nine percent for 30 years and a $322 month- 
ly payment (excluding taxes and insurance), 
husband’s death benefit value and life in- 
surance total of $20,000 plus $150,000, sav- 
ings of $5000 and an estimate of six percent 
for inflation in future years. 

Program Output 

Program output (Table 2) generates two 
loops: the first (or outer) loop, always start- 
ing with the expression “if husband dies in,” 
displays wife’s net cash received (after 
taxes) and her monthly income including 
any Social Security benefits for that partic- 
ular year of his death from 1980 to 1999. The 
second (or inner) loop, always starting with 
the expression “at wife’s age,” displays the 


wife’s monthly income, expenses, monthly 
surplus (positive or negative), home value, 
equity in home and cumulative surplus for 
each year of her life after his death in the 
year stipulated in the particular outer loop 
year. (1999 above can easily be changed in 
line 860 for more or fewer years’ projec- 
tions.) 



If this looks complicated, the potential 
reality it represents is just that— compli- 
cated. The wife’s income and. other vari- 
ables change depending upon two factors: 
the year of the husband’s death and (for 
each year of his death) the number of years 
(her age) following his death. 


For example, if he dies in 1985, the base 
amount of insurance, savings and so on de- 
termining the next ten or 20 years of her 
life’s monthly income is far different than 
the base amount if he died in 1980. In the 
sample data and output, the program gener- 
ates 361 inner loop displays (19 inner loop 
financial situations times 19 outer loop pos- 
sibilities of death), and all are different de- 
pending on the two factors. Fortunately, the 
program incorporates and handles these 
complexities, and the program user need 
only enter base year data (as above) and 
read the output information for each year. 

To illustrate several immediate uses of 
the program output (still using Table 1 sam- 
ple data), suppose that the husband dies in 
1980. In that year, when the wife is 51, her 
monthly surplus or margin is a comfortable 
$431. But by the time she is 59, just before 
Social Security benefits are activated at 60, 
her monthly surplus has declined to zero. 
The reason is that her income is frozen at 
the level of the year of the husband’s death 
while inflation drives up monthly expenses 
each year. 

Fortunately, in this case, her cumulative 
surplus from prior years is sufficient to ab- 
sorb the erosion of the monthly surplus. By 
contrast, if life insurance had been $100,000 
instead of $150,000, the wife’s monthly sur- 
plus at 59 would be - $419 and cumulative 
surplus - $20,000 (obviously, the economic 
system would not extend her such bor- 
rowed funds, and the only option would be a 
drastic collapse in her standard of living). 

For anyone using this program, many as- 
sumptions can quickly be entered into data 
lines and run to test their long-term conse- 
quences, especially assumptions about 
minimum life insurance needed at any 
given time. 


Program Mechanics and Documentation 

The program has two loops— an outer 
GOTO loop and an inner FOR-NEXT loop. 
The inner loop also incorporates a number 
of subroutine loops. Many secondary vari- 
ables (such as BB) and temporary variables 
(such as VI) are used to isolate the intended 
effect on one loop from the unintended ef- 


feet upon the other as numerical values 
need programmed changes in both— but at 
different program points. Using the basic 
variables in the Table 1 data list as a start- 
ing point, it will be easy to trace the logic 
and movement of the program. 

Program documentation (REM lines) has 
been eliminated and placed instead in the 
text here to minimize memory required to 
run the program. As listed, the program can 
output 20 or more outer loops, each with 20 
or more inner loops, and do it within the lim- 
its of a 4K RAM memory system. Thus, any- 
one, even with his first personal computer, 
can use the program immediately. 

Only a few other program lines need spe- 
cial comment: 

• Social Security benefits are initiated and 
“indexed” in lines 116, 131 and 930. 

• Estate taxes are calculated in line 126. 

• Death benefit (line 840) is frozen at hus- 
band’s retirement age in line 121. 

• Monthly expenses subject to inflation are 
increased by P factor in lines 133 and 177. 

• Calculations for home value, amortiza- 
tion of mortgage and home equity are in 
lines 310 through 315. 

Note that, in line with past years’ pat- 
terns, the annual increases in home value 
are set two percentage points above the 
rate of general inflation (P), and that home 
value and equity rates of increase decline 
slightly in the later years of a run to reflect 
some real depreciation with age. For brevi- 
ty, I used different formulas to calculate 
home value and equity in the outer as con- 
trasted with the inner loops; this results in 
slight, but insignificant, absolute value vari- 
ations in the later years for each loop during 
a run. 

Program Modifications 

My primary criteria in the program design 
were convenience and ease of use. At 
times, however, you will want to modify the 
program itself. Mainly, there are three such 
occasions. 

The first concerns the estate tax formula 
built into the program. Current law allows a 
$250,000 marital deduction when a husband 
passes his estate, at death, to his wife (pro- 
vided he explicitly declares in his will his in- 
tent to do so— neglect in making a will with 
such an explicit statement in it disallows 
the deduction and deprives the wife of 
about $80,000 to taxes!). 

Current law has also set the unified credit 
against the actual net estate tax at $47,000, 
deductible from the tax itself. Thus, if you 
plan your estate properly, you can take ad- 
vantage of the deduction and credit and 
pass on an estate of up to $400,000 with no 
estate taxes at all. But the law changes of- 
ten— usually every two years with congres- 
sional elections. When it does, make the 
change in the program in line 126 by substi- 


10 REM 
28 REM 

** 

ESTRTE PLANNING 

** 

30 REM 

** 


** 

48 REM 

** 

PROGRAM BY J. OWENS, PH. D. , 1979 

** 

50 REM 





60 DEF FNT(X) = INT(X * 1 +. 5)/l 
70 DEF FNH(X) = INT(X * 108 +. 5)/100 

100 REfiD V, 6; J; TI; PL; YD; ft; Sft; SI; HV; P; K; S4; ET; E; PR 
110 YY=Y : B8=B : T=TI : HW=HV : RP=PR : ftft=fi 

115 IF B>59 THEN GOTO 120 

116 S4=FNT(S4+(S4 * P * (60-B^)) 

120 PRINT H IF HUSBftND DIES IN"; Y+i; "WIFE WILL INHERIT CASH:" 

121 Y=Y+1 : B=6+l : J=J+i : IF J<66 THEN TI=TI+PL 
123 Sfi=Sft+Sl : TT=TI+fl+Sft : T9=TT+EH : X=X+1 

125 PRINT" INSURANCE"^; "+ DEATH BENEFIT"; TI; "+ SAVINGS";SA; " 3 ";TT 

126 IF T9M26080 THEN TX=FNT((T9-426000)* 33) : 1FT9<426000THENTX=0 

128 V=TT-TX 

129 IF B < 60 THEN SS=0 

130 IF B>59 THEN SS=FNT(S4) 

131 IF B>59 THEN S4=S4+<S4*P) 

132 W=FNT((V*K)/12) 

133 ET=ET+(ET*P) : EX=FNT(E+ET) 

135 PRINT"NET CftSH INHERITED LESS TAXESC; TX; M ) 3 "; V 

136 PRINTTABQ5); "MONTHLY INCOME 3 "; VV; "+S0C. SEC. ";SS; *="; VV+SS 
140 FOR R= 1 TO (YD-(Y+D) 

145 PRINT 

150 PRINT"fiT WIFE'S AGE"; BB+1; "(IN"; YY+1; ")" 

160 BB=BB+1 : YY=YY+i : IF B6>60 THEN GOTO 170 
165 IF B8>59 THEN SS=S4 

170 IN=W+SS : SS=FNT (SS+(SS*P> ) : EE=E7+E8 : IF £E>EX THEN GOTO 177 

175 E?=E : E8=ET 

177 EE=FNT(E7+E8) : E8=E8+(E8*P) 

290 EE=FNT(E7+E8) : SU=FNT(IN-EE) 

300 PRINT"HER MONTHLY INC0ME="; IN; "AND EXPENSE 3 "; EE; "< SURPLUS 3 ";SU 
305 IF R=1 THEN HE=HV-PR 

310 HV=HV+(HV*(P+. 02)) : V1=PR*. 09 : V2=E*12 : PR=PR-(V2-V1) 

315 HE=HV-PR: REM AMORTIZING AT 9K AND BY YEAR; NOT MONTH 
325 PRINTTAB(8); "HOME VALUE 3 "; FNT(HV), "HOME EQUITY 3 "; FNT(HE) 

330 CS=CS+(SU*12) 

350 PRINTTAB(8); "WIFE'S CUMULATIVE («0WTH-BV-f1CWTH)SLIRPLUS= H ; CS 
500 NEXT R 

510 EE=EX : E7=E : E8=ET 
520 BB=B : YY=Y : T=TI : CS=0 
522 HV=HW+(HW * «P+. 02)* X)) 

530 PR=RP-( ( (E*12)*X)-( (RP*. 09)*X)) 

600 IF Y=YD THEN END 
650 PRINT 
700 GOTO 120 
810 DATA 1979 
820 DATA 50 
830 DATA 51 
840 DATA 28000 
850 DATA 2900 
860 DATA 1999 
870 DATA 150000 
888 DATA 5000 
890 DATA 1080 
900 DATA 50000 
910 DATA . 06 
920 DATA . 10 
930 DATA 508 
940 DATA 650; 322 
950 DATA 40000 

Program listing. Estate Planning program in OSI BASIC. 


Microcomputing, October 1980 33 


tuting new numbers for the present line’s 
.33 and 426000. 

The second possible modification in- 
volves life insurance provisions throughout 
the program that cannot be handled in the 
data lines. The program assumes a set 


amount of life insurance (as entered in line 
870) until the husband’s death. If a portion 
is term or group insurance, ending at the 
husband’s retirement age of 65, that 
amount must be deducted by adding a new 
program line. If, for example, the term 


amount ending at 65 were $20,000, then 
add: 

Line 122 IF J= 66 THEN LET A = A- 20000 

If the amount affected here were $30,000 
terminating at age 62, line 122 would be- 
come: 


Q> 

•Q 

.cc 


o> 

.c 

co 

Q. 

O 

S 

2 

o> 

8 

a 

5 


2 

cvi 

Q> 

.CO 



IF HUSBAND DIES IN 1988 WIFE HILL INHERIT CASH: 

INSURANCE 150088 ♦ DEATH BENEFIT 22908 + SAVINGS 6898 = 178888 
NET CASH INHERITED LESS TAXES< 0 ) = 178888 


MONTHLY INC0ME= 1483 ♦SOC. SEC. 0 = 1483 

AT WIFE'S AGE 51 (IN I960 ) 

HER MONTHLY INCOME* 1483 AND EXPENSE= 1052 (SURPLUS* 431 
HOPE VALUE= 54090 HOME EQUITY= 14264 
WIFE'S CUMULATIVE ( M0NTH-6Y-M0NTH ) SURPLUS 5 5172 

AT WIFE'S AGE 52 (IN 1981 ) 

HER MONTHLY IHC0ME= 1483 AND EXPENSE = 18% (SURPLUS= 387 
HOME VALUE= 58328 HOME EQUITY* 18872 
WIFE'S CUMULATIVE <MONTH-BY-HONTH)SURPLUS= 9816 

AT WIFE'S AGE 53 (IN 1982 ) 

HER MONTHLY INC0ME= 1483 AND EXPENSE= 1143 (SURPLUS= 340 
HOME VALUE= 62986 HOME EQUITY= 23851 
WIFE'S CUMULATIVE (MONTH-BY-MONTH)SURPLUSs 13896 

AT WIFE'S AGE 54 (IN 1983 ) 

HER MONTHLY INCOPC* 1483 AND EXPENSE= 1192 (SURPLUS= 291 
HOME VALUE= 68824 HOME EGU1TY= 29232 
WIFE'S CUMULATIVE ( MONTH-BY-MONTH )SURPLUS= 17388 

AT WIFE'S AGE 55 (IN 1984 ) 

HER MONTHLY INCOME= 1483 AND EXPENSE= 1244 (SURPLUS= 239 
HOME VALUES 73466 HOME EQUITY= 35846 
WIFE'S CUMULATIVE (M0NTH-8V-M0NTH)SURPLUS= 28256 

AT WIFE'S AGE 56 (IN 1985 ) 

HER MONTHLY INCOME= 1483 AND EXPENSE= 1299 (SURPLUS= 184 
HOME VALUES 79344 HOME EQUITY* 41338 
WIFE'S CUMULATIVE (MONTH-BY-MONTH)SURPLUS= 22464 

AT WIFE'S AGE 57 (IN 1986 ) 

HER MONTHLY INCOME= 1483 AND EXPENSE= 1358 (SURPLUS* 125 
HOME VALUE* 85691 HOME EQUITY* 48128 
WIFE'S CUMULATIVE ( MONTH- BY-MONTH)SURPL US* 23964 

AT WIFE'S AGE 58 (IN 1987 ) 

HER MONTHLY INCOME* 1483 AND EXPENSE* 1420 (SURPLUS* 63 
HOME VALUE* 92547 HOME EQUITY* 55458 
WIFE'S CUMULATIVE (MONTH-BY-MONTH) SURPLUS* 24728 

AT WIFE'S AGE 59 (IN 1988 ) 

HER MONTHLY INCOME* 1483 AND EXPENSE* 1486 (SURPLUS*- 3 
HOME VALUE* 99958 HOME EQUITY* 63388 
WIFE'S CUMULATIVE (M0NTH-6Y-H0NTH) SURPLUS* 24684 

AT WIFE'S AGE 68 (IN 1989 ) 

ICR MONTHLY INCOME* 2283 AND EXPENSE* 1556 (SURPLUS* 727 
HOME VALUE* 187946 HOME EQUITY* 71957 
WIFE'S CUMULATIVE (MONTH-BY-HONTH)SURPLUS* 33488 

AT WIFE'S AGE 61 (IN 1998 ) 

HER MONTHLY INCOME* 2331 AND EXPENSE* 1638 (SURPLUS* 701 
HOME VALUE* 116582 HOME EQUITY* 81218 
WIFE'S CUMULATIVE (MONTH-BY-MONTH)SURPLUS* 41828 

AT WIFE'S AGE 62 (IN 1991 ) 

HER MONTHLY INCOME* 2382 AND EXPENSE* 1788 (SURPLUS* 674 
HOME VALUE* 125989 HOME EQUITY* 91226 
WIFE'S CUMULATIVE (MONTH-BY-MONTH) SURPLUS* 49988 

AT WIFE'S AGE 63 (IN 1992 ) 

HER MONTHLY INCOME* 2436 AND EXPENSE* 1792 (SURPLUS* 644 
HOME VALUE* 135981 HOME EQUITY* 182041 
WIFE'S CUMULATIVE (MONTH-BY-MONTH) SURPLUS* 57636 

AT WIFE'S AGE 64 (IN 1993 ) 

ICR MONTHLY INCOME* 2493 AND EXPENSE* 1888 (SURPLUS* 613 
HOME VALUE* 146860 HOME EQUITY* 113729 
WIFE'S CUMULATIVE (HONTH-BY-HONTH)SURPLUS* 64992 

AT WIFE'S AGE 65 (IN 1994 ) 

ICR MONTH.Y INCOME* 2554 AND EXPENSE* 1973 (SURPLUS* 581 
HOME VALUE* 158688 HOPC EQUITY* 126360 
WIFE'S CUMULATIVE (M0NTH-8Y-M0NTH)SURPLUS= 71964 


AT WIFE'S AGE 66 (IN 1995 ) 

HER MONTHLY INCOME* 2618 AW) EXPENSE* 2872 (SURPLUS* 546 
HOPC VALUE* 171297 HOPC EQUITY* 148818 
WIFE'S CUMULATIVE (MONTH-BY-MONTH)SURPLUS* 78516 

AT WIFE'S AGE 67 (IN 1996 ) 

ICR MONTHLY INCOME* 2686 AW) EffENSE* 2177 (SURPLUS* 589 
HOME VALUE* 185881 HOC EQUITY* 154762 
WIFE'S CUMULATIVE ( MONTH-BY-MONTH ) SURPLUS* 84624 

AT WIFE'S AGE 68 (IN 1997 ) 

ICR MONTWY INCOPC* 2758 AND EXPENSE* 2289 (SURPLUS* 469 
HOME VALUE* 199881 HOPC EQUITY* 178785 
WIFE'S CUMULATIVE (MONTH-BY-MONTH) SURPLUS 98252 



IF HUSBAND DIES IN 1995 WIFE WILL INHERIT CASH: 

INSURANCE 158088 + DEATH BENEFIT 48888 ♦ SAVINGS 21808 = 219888 
NET CASH INHERITED LESS TAXES< 8 ) = 219888 

MONTHLY INCOME* 1825 +SOC. SEC. 1135 = 2968 


AT WIFE'S AGE 66 (IN 1995 ) 

HER MONTHLY INCOME* 2968 AND EXPENSE* 2872 (SURPLUS* 888 
HOME VALUE* 118888 HOME EQUITY* 83388 
WIFE'S CUMULATIVE (MONTH-BY-MONTH ) SURPLUS* 18656 

AT WIFE'S AGE 67 (IN 1996 ) 

HER MONTHLY INCOME* 3828 AND EXPENSE* 2177 (SURPLUS* 851 
HOME VALUE* 128384 HOME EQUITY* 93561 
WIFE'S CUMULATIVE (MONTH-BY-HONTH)SURPLUS* 28868 

AT WIFE'S AGE 68 (IN 1997 ) 

HER MONTHLY INCOME* 3188 AND EXPENSE* 2289 (SURPLUS* 811 
HOME VALUE* 138568 HOME EQUITY* 184562 
WIFE'S CUMULATIVE (MONTH-BY-MONTH)SURPLUS* 38688 


IF HUSBAND DIES IN 1996 WIFE HILL IWCRIT CASH: 

INSURANCE 158008 + DEATH BENEFIT 48888 + SAVINGS 22888 = 228880 
NET CASH INHERITED LESS TAXES( 8 ) = 220888 

MONTHLY INCOME* 1833 +SOC. SEC. 1283 = 3836 

AT WIFE'S AGE 67 (IN 1996 ) 

HER MONTHLY INCOME* 3836 AND EXPENSE* 2177 (SURPLUS* 859 
HOME VALUE* 123128 HOME EQUITY* 87988 
WIFE'S CUMULATIVE (MONTH-BY-MONTH)SURPLUS* 18388 


AT WIFE'S AGE 68 (IN 1997 ) 

HER MONTHLY INCOME* 3188 AND EXPENSE* 2289 (SURPLUS* 819 
HOME VALUE* 132978 HOPC EQUITY* 98548 
WIFE'S CUMULATIVE (MONTH-BY-MONTH)SURPLUS* 28136 


IF HUSBAND DIES IN 1997 WIFE WILL IWCRIT CASH: 

INSURANCE 158008 ♦ DEATH BENEFIT 48888 ♦ SAVINGS 23888 = 221888 
NET CASH INHERITED LESS TAXES ( 8 ) = 221888 

MONTHLY INCOME* 1842 +SOC. SEC. 1275 = 3117 

AT WIFE'S AGE 68 (IN 1997 ) 

HER MONTHLY INCOME* 3117 AW) EXPENSE* 2289 (SURPLUS* 828 
HOME VALUE* 127448 HOME EQUITY* 92596 
WIFE'S CUMULATIVE (MONTH-BY-MONTH)SURPLUS* 9936 


IF HUSBAND DIES IN 1998 WIFE WILL INHERIT CASH: 

INSURANCE 150880 + DEATH BENEFIT 48888 + SAVINGS 24888 = 222888 
NET CASH INHERITED LESS TAXES( 8 ) * 222888 

MONTHLY INCOME* 1858 +SOC SEC. 1352 = 3282 

AT WIFE'S AGE 69 (IN 1998 ) 

HER MONTHLY INCOME* 3282 AND EXPENSE* 2487 (SURPLUS* 795 
HOME VALUE* 131768 HOME EQUITY* 97284 
WIFE'S CUMULATIVE (MONTH-BY-MONTH) SURPLUS* 9548 


34 Microcomputing, October 1980 


IF J =62 THEN LET A = A-30000 


The third possible modification makes 
the program more convenient to use. As 
programmed, any output will display in se- 
quence many inner loop years for each 
outer loop year of the husband’s death. For 
a quicker summary, outputting outer year 
results only, change line 140 to: FOR R = 1 
TO 1. 

If you want only, say, three inner loop 
years for each outer loop year, then use line 
140 in the form: 
for r = 1 TO 3 

Conclusion 

This program is no substitute for your 
lawyer’s and banker’s professional advice 
about your will and strategies available in 
estate planning. But it makes the calcula- 
tions you need to see future objective re- 
sults of current decisions or options, and 
helps evaluate those decisions and op- 
tions.! 


Dr. James Owens is the director of the 
Department of Management Sciences 
and a professor of management and or- 
ganizational behavior at the American 
University School of Business Adminis- 
tration in Washington, D.C. 


□ 51 


Video Games I $ 15 

Head - On, Tank Battle, 

Trap! 

Video Games 2 15 

Gremlin Hunt, Indy 
5000, Gunfight 

Board Games I 15 

Cubic, Mini-Gomoku 

Dungeon Chase 10 

A D&D video game 

Cl Shorthand 12 


(C2/4/8 ready soon) 

For BASIC-in-ROM systems 

SEND FOR FREE CATALOG 


Orion Software 
Associates ^329 
147 Main Street 
Ossining, NY 10562 


SPECIAL 10% DISCOUNT 
ON SOFTWARE FOR 
SORCERERS 
APPLE ' TRS-80 * 


ADVENTURELAND by Scott Adams 

You wander through an enchanted world 
trying to recover 13 lost treasures. You'll en- 
counter WILD ANIMALS. MAGIC BEINGS, and 
many other perils and puzzles. 

$13.45 

PIRATE ADVENTURE by Scott Adams 

'Yo Ho Ho and a bottle of rum...' You’ll 
meet up with the pirate and his daffy parrot a- 
long with many strange sights as you attempt to 
go from your London flat to Treasure Isiand. Can 
you recover LONG JOHN SILVER S lost trea- 
sure? 

$14-95 $13.45 

MISSION IMPOSSIBLE ADVENTURE 

by Scott Adams 
Plenty of adventure as you try to com- 
plete your mission in time to save the world's first 
automated nuclear reactor 

£14-35 $13.45 

VOODOO CASTLE by Scott Aaams 

Beware of the Voodoo mar. as you try 
to save Count Cristo from the fiendish curse. 

You are his only hope! 

$44-95 $13.45 

MAGIC ISLE by Tim Quinlan 

This is z fantasy simulation where you 
are the the ruler of the Magic Isle , where sorc- 
ery and mythological creatures are the order «f 
the rlav The Magic Isle is beset with evil curses, 
plagues, monsters, devastating storms and 
droughts $7.15 

£7^95 

DEMO PROGRAM hv Tim Quinlan 

This is a great program for showing off 
your computer. It emulates museum comouter 
exhibits. Chatty and personal, it Dl tys several 
names and gives a math test in addition , sub- 
traction, multiplication and division, with a score 
when finished. The games it plays are Guess Mv 
Number. CraDS and Tic-Tac-Toe 
£7.95 $7.15 

OTHELLO III by Tim Quinlan 

A strategy game played on eight by eight 
board. Tne object of the game is to capture as 
many of thesquaresas possible. You can play a- 
gainst the computer, a friend or have the comput- 
er play against itself. 

SJ-.-95 $7.15 

PERSONAL FINANCE PACKAGE by T.Quinlan 
This package contains three programs 
to aid you in handling your persona! finances. The 
firs*, is a Checking Account P-ogram; the second 
program helps you keep track o' your budget and 
the final program computes interest on loans, 
mortgages and charge counts. 

£9.95 $0.95 


THE COUNT by Scott Adams 

What are you doing in a big brass bed 
in Transylvania arid why did the postman deliver 
a bottle of blood to you? 

$44-95 $13.45 

y 

STRANGE ODYSSEY by Scott Adams 

Marooned at the edge of the galaxy, 

you've stumbled on the ruins of an ancient alien 
civilization complete with fabulous treasures and 
unearthly technologies. 

$1495 $13.45 

MYSTERY FUN HOUSE by Scott Adams 

Can you find your way thru the strang- 
est Fun House in existence, or will you be kicked 
out when the park closes? 

$14-95 $13.45 

HOUSE OF SEVEN GABLES by G . Hassett 
Explore the House of the Seven Gables 
and find treasures, they're all yours if you can 
find them However, there's a catch, you have 
to destroy the witch to leave. 

$13.95 $11.65 

JOURNEY TO THE CENTER OF THE EARTH 
by Greg Hassett 
Beware of the earth's hazards as you 
attempt to gather materials to fix your broken 
carthdigger 

$43.95 $11.65 

KING TUT'S TOMB by Greg Hassett 

Beware the evil th«*t lurks within the 
tomb as you search for Tut’s sarcophagus and 
escape with the treasures anu your iife...if you’re 
lucky. 

£13r95 $11.65 

SORCERER'S CASTLE by Greg Hassett 

Find and enter the Sorcerer's castle, 
gather the treasure, kill the Sorcerer and try to 
escape. 

$13.95 $11.65 

ENCHANTED ISLAND by Greg Hassett 

Explore the enchanted island for fame 
and riches. Danger and adventure await you a. 
every turn in this magic place 
$43.95 $11.65 

ATLANTIS by Greg Hassett 

Search for treasure in the ancient sunk 
en city of Atlantis, but beware of its dangerous 
inhabitants and the giant whirlpool. 

$13,95 $11.65 

GALACTIC BLOCKADE RUNNER by T Quinlan 
You are the captain of a federation star- 
ship battle cruiser Your mission is to run a.n 
enemy blockade and to deliver vita! supplies to 
federation forces under seige on planet M/5 
$9x95 $7.15 


WE PAY SHIPPING AND HANDLING ON ALL ORDERS OVER $10.00 
WITHIN THE U.S. ORDERS UNDER $10.00 PLEASE ADD $1.00. 
CONNECTICUT RESIDENTS PLEASE ADD 7 1/2% SALES TAX. 

MICRO DISCOUNT SERVICE 

^126 

243 Old Colony Road Eastford, Conn. 06242 
(203) 974-1214 


Reader Service index— page 241 


Microcomputing, October 1980 35 


1 "S O f ~tVu , (SQS 



Conversing with 
Your Computer 


Businessmen, call your computer 
from the nearest phone. 


Marc Seligman 
320 Bryn Mawr A ve. 

Bala Cynwyd, PA 19004 


R emote use of your computer is neither 
as expensive nor as complicated as 
you might believe. Follow these instruc- 
tions and you will be able to tie into your 
computer from a friend’s house, a business 
meeting or your favorite watering hole. 

This article is most useful to owners of 
the Vector MZ system with the Mindless 
Terminal. It can also be adapted for other 
MZ systems and for computers from other 
manufacturers. You must, however, design 
your own conversions. 

The Vector MZ has enjoyed remarkable 
success throughout the country, but 
especially on the West Coast. Due to its 
popularity as a small-business system, 
major modifications are often needed. The 
trouble is, most purchasers have no 
knowledge of machine coding or assembly 
language, and don’t wish to learn. They 
want a fast, reliable system. They are not 
hobbyists, but dedicated users who need 
their computers for serious business ap- 
plications. When they have a problem, they 
want it solved now, without a lot of foot- 
shuffling and programs-take-time-to-write 
excuses. 

Were these users to ask about telephone 
interfacing at their computer store, they 
would most likely be steered to an expen- 
sive and complicated internal auto-answer 
modem. It they were foolish enough to buy 
an auto-answer external modem with the 


hope that they could just plug it in, they 
would be in for a rude awakening. 

Telephone Connections 

This method is inexpensive and amazing- 
ly effective. The necessary parts include a 
Vector MZ with Mindless Terminal, a Texas 
Instruments Model 745 portable data ter- 
minal set to mark parity ($1595), a Data 
Access Systems Model DASI 68-01 modem 
($300) and an RS-232 cable (use pins 1, 2, 3, 
4, 6, 7, 8 and 20; wire pin 2 of one plug to pin 
3 of the other and vice versa). (See Fig. 1.) 

If you don’t know anything about wiring a 
cable, have the store employees wire it for 
you. All wiring is direct except for the pin 2 
and 3 exchange noted above. 

Before you make the big test, be sure that 
the printer routine on your RES module is 
the DECW4 version. Section 2.2.1. 6 of your 
Vector Graphic manual tells you how. If you 
normally use another version, don’t panic. 
Copy your master diskette, then modify the 
RES module and save it according to sec- 
tion 2.2.1. 6. Just copy any of your programs 
onto this disk and make sure you use only 
this disk when you access the computer 
from your remote terminal. 

You also have to adjust the baud rate of 
your computer to match the speed of the 
745 (300 baud). Even if you’ve never opened 
up your computer, this is one time that you 
should. As with all electrical appliances, 
make sure it’s unplugged. 

Unscrew the four Phillips-head screws 
(two on each side) on the top part of the 
case and lift off the top. On one of the 
printed circuit boards near the rear of the 


computer, a series of small switches in the 
upper left corner will usually be set to 1200. 
Using a pencil or small screwdriver, pop the 
switch that is out of line so that it is in line 
with the others. Next, find the switch la- 
beled 300 and pop that out of line. 

When you first open the computer, touch 
your hand to the metal frame on the left side 
that acts as a guide for the circuit boards, 
but don’t touch anything else. Some elec- 
trical wizards feel that this will ground any 
loose static electricity in your body and pre- 
vent the computer from having a coronary if 
your hand happens to slip later on in the 
procedure. 

Plug the modem into the wall outlet. Con- 
nect its telephone jack to the modular out- 
let that you already have on the wall. If you 
don’t have a modular jack, Radio Shack 
sells adapters that you can plug in or screw 
on to your telephone connector box. Again, 
if you are mechanically inept, have the 
phone company install the adapter. 

If you have an extra modular cable, you 
can plug your telephone into the extra 
modular socket on the back of the DASI 
68-01 (a nice feature that saves having to 
remember to replug the telephone into the 
wall when you are done with your remote 
work). Finally, connect the RS-232 cable be- 
tween the modem and the computer (either 
side can plug into either device). 

Software 

Turn on the computer and bring up 
BASIC. Enter the program listing and save 
it. I call this program Remote. The next to 
last statement loads my menu so that I am 


36 Microcomputing, October 1980 


ready to run as soon as the ready prompt is 
flashed on the Mindless Terminal. For your 
own use, enter the name of your menu pro- 
gram. If you do not have a menu program, 
enter the name of any other program you 
have on the diskette. 

Run the program. The computer will set 
itself for input through the RS-232 connec- 
tor rather than through the Mindless Ter- 
minal. All operations can be performed by 
direct wiring to the connector (as with a 
Texas Instruments Model 820 KSR printer) 
or remotely through a modem connected to 
the computer. 

Press the power button on the modem. A 
red light indicates that all is fine. Go to 
another phone and dial the first phone num- 
ber. A ring or two will be followed by a high- 
pitched sound. Following the procedures 
that came with the Tl 745 instruction book, 
put the phone handset into the acoustic 
cuffs of the 745, which is already turned on, 
according to the manual’s instructions. 

Once the connection is made, press the 
on-line key and make sure that the terminal 
is set for full duplex and high speed (read 
the manual for details). Type a control-C to 
set a little interrupt; the computer will 
follow on the next line with a ready. If 
nothing happens, make sure that the green 
carrier detect light is on, and that the ter- 
minal is on-line. The switches for full duplex 


and high speed will not prevent data from 
being transmitted, even if they are set incor- 
rectly. But then again, the data will be so 
garbled that the messages will be mean- 
ingless. 

Operation 

From your portable terminal you can do 
whatever you like. The escape key on the 
portable terminal will not function. A con- 
trol-X will bring back the BASIC sign-on 
message but will preserve whatever pro- 
gram you had in memory. A rubout will 
generate a back space and the ability to 
change previously entered information. A 
control-U will erase an entire line’s input. 
Control-S will stop the computer from send- 
ing more information. Hitting any other key 
will resume transmission with no data loss. 

With this particular arrangement, you will 
receive on the 745 an echo of what the com- 
puter receives. Local printing is sup- 
pressed, so typing will be a little strange, 
since there will be a brief delay between typ- 
ing a character and having it appear on the 
thermal paper. 

To reuse your computer with the Mind- 
less Terminal, hit the computer reset button 
and type in a B from the keyboard on the 
Mindless Terminal. The entire system will 
reboot and allow normal operation of the 
system. 



To use the computer from a remote loca- 
tion, make sure that the speed is set to 300 
baud and execute PLOADG Remote. Test 
the system with the portable terminal be- 
fore you leave the computer far behind. If 
you accidentally load a program other than 
Remote, the portable terminal will not work, 
and if you need to access your computer, 
you won’t be able to do so. Also, turn off the 
modem when not in use, or else people will 
never be able to reach you by telephone. 

The modem disconnects the computer 
and hangs up the phone after you terminate 
remote communication. You can call it 
again and again without having to reset 
anything on the computer. It is truly an effi- 
cient, low-cost method of accessing your 
computer from the field. ■ 


10 

20 

30 

40 

50 

60 

70 

80 

90 

100 

110 

120 

130 

140 

150 

160 

170 

180 

190 

200 

210 

220 

230 

240 

250 

260 

270 

280 

290 

300 

310 

320 

330 

340 

350 

360 

370 

380 


REM ** REMOTE 
REM ** 

REM ** THIS PROGRAM SETS UP THE VECTOR MZ SYSTEM B FOR REMOTE USE THROUGH 
REM ** A MODEM (DAS I 68-01) ATTACHED TO ITS RS 232 CONNECTOR. THE REMOTE 
REM ** DEVICE IS A TEXAS INSTRUMENTS 745 PORTABLE DATA TERMINAL SET FOR 
REM ** MARK PARITY. BAUD RATE ON THE COMPUTER MUST BE SET TO 300. 

REM 

REM ** WRITTEN BY: MARC SELIGMAN 

REM ** SEPTEMBER 11. 1979 

REM ** 

REM ** FOR PERSONAL USE ONLY. NOT TO BE RESOLD. 

REM 
REM 
REM 

ASSIGN (2,3) 

POKE ( 1 6R07 1 2 ) = 1 6RDB 
POKE ( 1 6R071 3 ) = 1 6R07 
POKE ( 1 6R07 1 4 ) = 1 6REE 
POKE ( 1 6R07 1 5 ) = 1 6R04 
POKE ( 1 6R07 1 6 ) = 1 6RE6 
POKE ( 1 6R071 7 ) = 1 6R02 
POKE ( 1 6R07 1 8 ) = 1 6RC8 
POKE ( 1 6R07 1 9 ) = 1 6RDB 
POKE ( 1 6R07 1 A ) = 1 6R06 
POKE ( 1 6R07 1 B ) = 1 6RE6 
POKE( 16R071C)=16R7F 
POKE ( 1 6R07 1 D ) = 1 6RFE 
P0KE(16R071E)=16R18 
POKE ( 1 6R07 1 F ) = 1 6RCA 
POKE ( 1 6R0720 ) - 1 6R52 
POKE( 16R0721 )=16RC1 
POKE ( 1 6R0722 ) - 1 6RC9 
POKE ( 1 6R05F9 ) = 1 6R 1 2 
POKE ( 1 6R05FA ) = 1 6R07 
POKE ( 1 6R0605 ) = 1 6R 1 2 
POKE ( 1 6R0606 ) = 1 6R07 
LOAD "MENU" 

END 


Program listing. 



Microcomputing, October 1980 37 




JPC PRODUCTS FOR 


\ 


6800 


COMPUTERS 



High Performance Cassette Interface 

• FAST - 4800 Baud Loads 4K in 8 Seconds! 

• RELIABLE - Error Rate Less Than 1 in 10* Bytes. 

• CONVENIENT - Plugs Directly Into The SWTPC. 

• PLUS - A Fully Buffered 8 Bit Output Port Provided. 

• LOW COST - $59.95 For Complete Kit. 

• OPTIONAL - CFM/3 File Manager. 

Manual 8- Listing $19.95 
(For Cassette Add) $ 6.95 


TERMS CASH. MC or VISA; Shipping & Handling $3 00 



Order Phone (505) 294-4623 
P.O. Box 5615 
Albuquerque, N.M. 87185 


A Quote on our new 

Integrated Accounting System (IAS): 


. . an excellent value — particularly good are the error checking and 
data entry procedures — documentation is good (both within the 
programs and separately provided materials }. " 

Mr. E. Lindow 

Director of Computer Operations 
Metric Industries 


Some of the IAS features include: 

Custom Chart of Accounts limited only by available memory (a 32K 
system will support up to 200 accounts including DOS and BASIC). 
Financial reports (service or manufacturing) including Income State- 
ment with current and Year-To-Date totals, Balance Sheet and 
Worksheet. Provision for "Header" and "Subsidiary" accounts. Check 
register. Account balances at any time. Up to 1100 Accounts 
Receivable. AR includes read-to-mail bills, automatic aging of AR ac- 
counts and posting to General Ledger. Up to 1100 Accounts Payable 
with check printing. Payroll supports up to 200 employees and permits 
payment by week, bi-weekly, semi-monthly, monthly, hourly or on 
salary or any combination thereof. Prints paychecks and W2 forms. 
Maintains all employee data with full editing. Current, quarterly and Y- 
T-D employee totals. IAS includes over 30 reports and listings to give 
you the information you need when you need it. Over 65 programs in 
all! 

Prices: General Ledger; $125.00, G.L. plus 1 subsystem; $225.00; G.L. 
plus 2 subsystems; $300.00; G.L. plus AR, AP and Payroll 
subsystems; $350.00. Manual for IAS is $20.00 (credited 
towards purchase). Please include $3.00 for First Class 
postage. 

IAS requires 32K of memory, North Star Release 4 or later 
DOS and BASIC and two disk drives. Printer output is 
provided for, but not required. Specify video device when 
82 ordering. 


master charge EC0S0FT Phone orders only: (317)253-6828 

p Q B(JX 68602 Indianapolis, IN 46268 


September, October Super Special 

Apple II 16K 

$ 950 . 00 .... 


INTEGRAL DATA 
SYSTEMS 


440G: Paper Tiger 
with Graphics; 

2K Buffer 

460: Word 

Processing Quality 
460G: IDS 460 w/Graphics 


DOUBLE VISION 
DISK II 

with controller 
without controller 

MICR0M0DEM 

PASCAL 

LEEDEX MONITOR 
KG-12C 

Green Phosphor 

12" Screen w/Glare Cover 

18 MHz bandwidth 


$950 

rag. $1095 


Centronics 737 

High Quality Dot Matrix 

Apple Silentype 

Includes interface and 
graphic capabilities 


$895 

reg. 995.00 


$535 

reg. 595.00 


$1099 

reg. 1295 


$1199 

reg. 1395 


Apple Parallel Int. 
Apple Serial Int. 
Centronics Parallel Int. 


$160 

reg. $180 

$175 

reg. $195 

$185 

reg. $225 


S295.00 

$525.00 

$445.00 

$325.00 

$425.00 


16K RAMS for 



$i40.oo VERBATIM 
$275.00 DISKS 007 

10 for $£/ 



The Computer Stop 



16919 Hawthorne Blvd. 



Lawndale, CA 90260 

105 

MON. • SAT. 

L 

(213) 371-4010 

10-6 A 


LOW COST IMPACT PRINTER 



48 Column Impact Printer available in KIT form or ASSEMBLED and 
TESTED, ready to be connected to your computer. Primary features 
include; Microprocessor controlled and programmable with 32 system 
level software commands. 96 ASCII characters with upper and lower 
case, no eye straining print with 9 software selectable sizes from 5 x 7 to 
larger 10 x 7 and 10 x 14 character fonts, reverse font printing 
capability, standard parallel and serial interface, baudrate selectable 
from 1 10 to 9600 baud, plus many more functions at your command. 

Prices for KITS are $295 (101A-48K) without enclosure and $325 
(101 A-48KE) with enclosure. KITS include all electronics, mechanical 
parts and detailed assembly instructions. 

ASSEMBLED and TESTED Impact Printers— prices are: $325 
(101A-48) excluding enclosure, $355 (101A 48E) with enclosure. 

For further information, contact; 

COOLSOL, INC. ^ 2 92 

P.O. Box 743. Anaheim, Ca. 92805 Phone: (714) 545-2216 
(7 days a week) 


38 Microcomputing, October 1980 




FOR APPLE II AND APPLE II PLUS COMPUTERS 

DoubleVision” 



80 x 24 Video Display with Upper and Lower Case 

COLUMNS UNES 1 * B B 

• is a hardware board that may be plugged into any slot in Apple II or Apple II Plus 32K or 48K Disks • full 128 ASCII character set, including 
control characters • fully programmable cursor • built in light pen capability • inverse video • full cursor control • works with 
50/60Hz • has 2k of its own screen memory • has its own video output jack that must be connected to a monitor (or a high band width black 
& white TV thru a good RF modulator). Color TV’s produce a poor display and are not recommended. • permits you to connect another 
monitor (or a T.V. set thru RFmod) to the Apple video output jack • displays 24 lines of 80 column text — programmable for different 
values • permits you to have graphics on Apple video output • video output and Apple video output may be connected to one monitor thru 
optional video switch • is active only when addressed for reading from or writing to • accepts lower case input from keyboard by use of 
escape key. (no modification required) or direct use of shift key (1-wire connection from shift key pad to DoubleVision required). • is compati- 
ble with the latest version of various word processing software packages. Presently these include Apple-pie 2.0— Programma International, 
Easywriter Professional system— Informational Unlimited, Text Editor/Formatter— Peripheral’s Unltd. (when ordering from these companies, 
please ask for versions compatible with DoubleVision). All software available from Computer Stop when released. • Peripheral’s Unltd. 
B.l.T.S. and P.l.T.S. and Southeastern Software’s “DATA CAPTURE’’ with Micromodem and communication card. These packages give ability 
to upload, transfer and download files from remote computers, and all at 80 columns! • Programma Int. latest assembler LISA V:20 will sup- 
port full 80 column display • is transparent for use with Basic and Pascal • software on disk for easy modification and adaptation for dif- 
ferent applications • completely commented source listing of software and hardware schematics available • PASCAL 
(optional) • becomes the console when installed in Pascal • Permits 80 column text processing with full upper/lower case while using 
Pascal’s editor • must be plugged into slot 3 when operating with Pascal 


Available now at your local computer store 


$295.00 


Call Computer Stop for Store nearest you 
Shipping, Insurance, Handling, extra 


Dealer inquiries invited. 

Contact: 

COMPUTER STOP CORP. 

2545 West 237th St. 

Suite L 

Torrance, CA 90505 

539-7671 


The Computer Stop 

16919 Hawthorne Blvd. 
Lawndale, CA 90260 - 

( 213 ) 371-4010 


Calif. Residents add 6% Sales Tax 
•Apple is a Registered TM of Apple Computers, Inc. 


MON. - SAT. 


10-6 


u* Reader Service index — page 24 1 


Microcomputing, October 1980 39 





Address List Program 


Machine-language program for 6800 users who want to keep up to date on who’s who. 


*J 00RD 



FUNCTION <N,B,Z,L, 

F,E,A,S,D) ? N 


DAWSON; HAROLD * 

453 287 5496 

310427 

4730 FULTON RD. 

JACKSON; MI 

76321 

JACKSON; JOHN 

301 251 6436 

290403 

243 AMOS ST. 

newburg; mo 

33557 

VARREL; PHVLLIS 

474 976 3287 

340323 

455 53RD ST. 

SflN FRANCISCO; Cfl 34567 

Example 2. Normal operation. Entry at $00 AD. Name sort. 


NAME <20 CHRRRCTERS ) 
JACKSON; JOHN, 

TELEPHONE <11 DIGIT MAX) 

3012516486 

BIRTH DRTE < WMMDD) 

290403 

STREET <21 CHRRRCTERS > 

243 RMOS ST., 

CITV;STRTE <17 CHARACTERS) 
NEUBURG; MO, 

ZIP CODE <5 DIGITS) 

33557 


NflME <20 CHRRRCTERS) 
DAWSON; HflROLD *, 
TELEPHONE <11 DIGIT MfiX) 
4532875496 
BIRTH DATE (WMMDD) 

318427 

STREET <21 CHRRRCTERS) 
4730 FULTON RD. , 

C I TV ; STATE <17 CHARACTERS) 
JACKSON# MI, 

ZIP CODE <5 DIGITS) 

76321 


NAME <20 CHARACTERS) 

VARREL ; PHVLLIS, 

TELEPHONE <11 DIGIT MfiX) 

4749763287 

BIRTH DRTE < WMMDD) 

340823 

STREET <21 CHARACTERS) 

455 53RD ST. , 

Cl TVJ STATE <17 CHRRRCTERS) 
SAN FRANCISCOJ Cfl 
ZIP CODE <5 DIGITS) 

34567 


NflME <20 CHRRRCTERS) 

i 


Example 1. Initial use. Entry at $0100. 
Shows initial entries and stops with an 
exclamation point (!). 


N — Sort by name 
Z — Sort by zip code 
F— List “flagged" entries 
A — Add an entry 

D- Delete an entry by sub-command as under S 
B — Sort by birth year 
L- List as currently sorted 
E — Exit to Monitor (or File Manager) 

S — Select an entry by sub-command: 

# — name (#name#) 

B — birth month (B04B) 

Z-zip code (Z20783Z) 

Table 1. 


C.H. Looney 

3406 Notre Dame Street 

Hyattsville, MD 20783 


T his machine-language program is for in- 
serting, retrieving, sorting and deleting 
name, address and birth date information. 

The program takes about 1200 bytes of 
storage. At least 80 entries can be stored in 
an 8K machine. 

Sorting is done by the primitive “bubble” 
method. It takes about one second to sort 
25 entries and about four seconds to sort 50 
entries. Sorting can be done by name, birth 
year or zip code. 

Entries can be selected for printing or 
viewing on a CRT terminal by name, birth 
month, zip code or “flag.” The “flagged” en- 
tries are marked by an asterisk after the 
name. Entries can be deleted after selection 
by name, birth month or zip code. 

Function selection is by single letter in- 
put, except for those operations involving 
selection of a sort field (name, birth month 
or zip code). The sort field can be as short or 
as long as desired. 

The functions are listed in Table 1. 

The program (Listing 1) is particularly 
valuable to 6800 users without disk capabil- 
ity. 

The first section of the program, from 


00A3 to 00FF, is an executive to accept 
commands and branch to the proper areas 
of the program to accomplish the desired 
results. Start the program at $0100 the first 
time it is used to set up memory space and 
get first entries. Succeeding uses should 
enter at $00AD (EXEC) to add entries, sort, 
print, delete entries and so on. 

The listing was prepared with a disas- 
sembler based on one described by Bob 
Lentz in the May 1979 Byte. His disassem- 
bler shows jump and branch destinations 
by address; I have included the capability of 
adding more conventional name destina- 
tions and labels along with comments. You 
may find the address destinations more 
helpful in understanding the operation of 
the program. 

My interest in a name/address data-base 
program was whetted by an article in the 
October 1978 Kilobaud by Wantz and Bate- 
man (“A Useful Address List Program,” p. 
102). They wrote their program in BASIC, 
however, and thus took a large amount of 
memory, leaving only room for about 15 en- 
tries in my 8K memory. This program pro- 
vides space for more than 80 entries in that 
8K of memory and sorts the entries in an ac- 
ceptable time. Ambitious enthusiasts may 
wish to put in a more advanced sorting pro- 
gram, for both exercise and improvement. 

The initialization section is the second 


40 Microcomputing, October 1980 


FUNCTION <N,B,Z,L,F,E,R,S,D> ? Z 


JACKSON; JOHN 
243 RMOS ST. 


VRRREL; PHVLLIS 
455 53RD ST. 


druison; hrrold * 

4730 FULTON RD. 


301 251 6486 290403 

NEWBURG; MO 33557 


474 976 3287 340823 

SRN FRRNCISCO; CR 34567 


453 287 5496 310427 

JRCKSON; MI 76321 


Example 3. Birth year sort. 


FUNCTION <N,B,Z,L,F,E,fl,S,D> ? B 


JRCKSON; JOHN 301 251 6486 

243 RMOS ST. NEWBURG; MO 

290403 

33557 

DRUISON; HRROLD *. 453 287 5496 

4730 FULTON RD. JRCKSON; MI 

318427 

76321 

VRRREL; PHVLLIS 474 976 3287 348823 

455 53RD ST. SRN FRRNCISCO; CR 34567 

Example 4. Zip code sort. 


FUNCTION <N,B,Z,L,F,E,fl,S,D> ? F 


DAWSON; HRROLD * 453 237 5496 

4730 FULTON RD. JRCKSON; MI 

310427 

76321 

Example 5. Flag sort. 



FUNCTION <N,B,Z,L,F,E,fl,S,D) ? S #Vfl R# 

VRRREL; PHVLLIS 474 976 3287 340823 

455 53RD ST. SRN FRANCISCO; CR 34567 

Example 6. Selection of name by first three letters. 


FUNCTION <N,B,Z,L,F,E,R,S,D> ? S B04B 


JRCKSON; JOHN 
243 RMOS ST. 


301 251 6486 290403 

NEWBURG; MO 33557 


DRUISON; HAROLD * 
4730 FULTON RD. 


453 287 5496 310427 

JRCKSON; MI 76321 


Example 7. Selection by birth month (April— 04) 


FUNCTION <N,B,Z,L,F,E,A,S,D> ? D Z76321Z 
DELETE THIS ENTRV <V/N>? 


DRUISON; HRROLD * 
4730 FULTON RD. 


453 237 5496 310427 

JRCKSON; MI 


76321 


FUNCTION <N,B,Z,L,F,E,fl,S,D:> ? N 


JRCKSON; JOHN 
243 RMOS ST. 


301 251 6486 290403 


NEWBURG; MO 


33557 


VRRREL; PHVLLIS 
455 53RD ST. 


474 976 3287 340823 

SRN FRRNCISCO; CR 34567 


FUNCTION <N,B,Z,L,F,E, A,S,D!> ? E 
CFM,-'3 UER 2.7 


part of the program. It sets up the area for 
storage of data from $0500 to $1310, allow- 
ing for 45 entries. Additional space can be 
allocated at $50 (80 decimal) spaces per en- 
try. 

The third section, the interrupt routine 
starting at $016A, permits stopping the 
printer on control-S and restarting on con- 
trol-Q. This is particularly useful on a CRT 
screen; information can be jotted down as 
the entire data base is scanned. The inter- 
rupt routine also permits returning to the 
executive by typing in control-C either dur- 
ing printing or during a pause. 

The listing section, $019F through 
$01 DD, sets up field lengths and branches 
to the interrupt routine to print the entries. 
LIST is a subroutine called by the executive 
and other program sections to print entries 
one at a time. SWTBUG routines are used 
throughout this program for input (INCH- 
E1AC), output (OUTCH-E1D1), printing a 
space (OUTS-EOCC) and printing a string 
ending with $04 (PDATA1-E07E). 

The sorting routines starting at $01 DE 
are based on ideas in “6800" Software 
Gourmet Guide & Cook Book by Scelbi 
Computer Consulting, Inc. This book is 
ideal for the beginning 6800 user and is also 
useful for the expert to use as a handbook 
and reference. The sorting routines use the 
primitive bubble sort, but with the relatively 
small number of entries, sorting times are 
not long. The first part of this section simply 


Example 8. Deletion by zip code, name sort, return to Manager. 


Listing 1. 


***** EXECutive routine — Jumps or branches to routines on 







bas i s 

of i nput. c 

ommands 

00R3 

81 

44 

CONTEX 

CMP 

R #44 

# D 

is it. a D? 

00R5 

26 

06 


BNE 

00RD 

EXEC: 

if not-.* do to EXEC 

00R7 

7E 

03B1 


JMP 

03B1 

DELETE 

else, do DELETE 

00RR 

7E 

1780 

JCFM 

JMP 

1730 

CFMx3 

do to File Manader 

00RD 

BD 

0300 

EXEC 

JSR 

0300 

PC.RLF 

print CR & LF 

0080 

CE 

04BD 


LDX 

#04BD 

#' FUNCTION. . . load menu index 

08B3 

BD 

E87E 


JSR 

E07E 

PDRTR1 

and print menu 

00B6 

BD 

El AC 


JSR 

E1RC 

INCH 

det a character 

00B9 

81 

4E 


CMP 

R #4E 

# N 

is it. an N? 

00BB 

27 

IF 


BEQ 

00DC: 

JSORTN 

if so, do sort by name 

08BD 

81 

42 


CMP 

R #42 

# B 

is it. a B? 

00BF 

27 

20 


BEQ 

00E1 

JSORTB 

if so, do sort by birth year 

00C1 

81 

5R 


CMP 

R #5R 

#'Z 

is it. a Z? 

00C3 

27 

21 


BEQ 

08E6 

JSORTZ 

if so, do sort by zip codes 

00C5 

81 

4C 


CMP 

R #4C 

#'L 

is it an L? 

00C7 

27 

20 


BEQ 

00E9 

JLIST 

if so, list entries 

00C9 

81 

46 


CMP 

fl #46 

#-F 

is it- an F? 

00CB 

27 

2B 


BEQ 

00F8 

JFLRG 

if so, list fl added entries 

00CD 

31 

45 


CMP 

R #45 

#E 

is it an E? 

00CF 

27 

D9 


BEQ 

00RR 

JCFM 

if so, do to Manader 

00D1 

81 

41 


CMP 

R #41 

#• A 

is it an fl? 

00D3 

27 

36 


BEQ 

010B 

RESTRT 

if so, do add an entr y 

00D5 

31 

53 


CMP 

R #53 

#S 

is it. an S? 

00D7 

26 

CR 


BNE 

00R3 

CONTEX 

if not, do to EXEC 

00D9 

7E 

033C 


JMP 

038C 

SELECT 

else, select an entry 

00DC 

BD 

01DE 

JSORTN 

JSR 

01 DE 

SORTN 

do sort, by names 

00DF 

28 

08 


BRR 

00E9 

JLIST 

and 1 i st entr i es 

00E1 

ED 

020C 

JSORTB 

JSR 

020C 

SORTB 

do sort by birth year- 

00E4 

20 

03 


BRR 

00E9 

JLIST 

arid 1 i st entr i es 

00E6 

BD 

01F5 

JSORTZ 

JSR 

81F5 

SORTZ 

do sort by zip codes 

00F9 

BD 

0300 

JLIST 

JSR 

0308 

PCRLF 

print CR & LF 

00EC 

CE 

0500 


LDX 

#0500 

#DATfi 

load data index 

80EF 

BD 

019F 


JSR 

819F 

LIST 

and list the entries 

00F2 

6D 

01 


TST 

X 01 


throudh 1 i st. i nd? 

00F4 

26 

F9 


BNE 

00EF 

JLIST+6 

i f not , cont i nue 

00F6 

28 

B5 

JEXEC 

BRR 

00RD 

EXEC 

else, do to EXEC 

00F8 

BD 

0300 

JFLRG 

JSR 

8300 

PCRLF 

print CR & LF 

00FB 

BD 

0276 


JSR 

0276 

FLAG 

and list- fl added entries 

00FE 

28 

F6 


BRR 

00F6 

JEXEC 

do to EXEC 

***** START 

routine 

— clears de 

sired memory area and 





adds entr 

ies to data 

base 

0100 

CE 

8500 

START 

LDX 

#0500 

#DATR 

load data index 

0103 

6F 

00 


CLR 

X 00 


and clear memory location 

0105 

03 



I NX 



do to next location 

0106 

8C 

1311 


CF'X 

#1311 

#DATEND+ 1 

end of data memory? 


Microcomputing, October 1980 41 


0109 

26 

F8 


BNE 

0103 

STftRT+3 

if not , do it adain 

010B 

CE 

0500 

RESTRT 

LDX 

#0500 

#DftTfl 

load data index 

010E 

BD 

02E9 


JSR 

02E9 

FNDEND 

move to end of entries 

0111 

BD 

0300 


JSR 

0300 

PCRLF 

print C\ \ LF 

0114 

36 

0D 


LDft 

ft #0D 

# ' CR 

load a CR 

0116 

ft7 

00 


STft 

ft X 00 


and store it 

0118 

03 



I NX 



do to next location 

0119 

C6 

14 


LDft 

B #14 


name field 1 end t h 

01 IB 

3D 

16 


BSR 

0133 

PROMPT 

do det a name 

01 ID 

C6 

0ft 


LDft 

B #8ft 


telephone number field lendth 

01 IF 

3D 

12 


BSR 

0133 

PROMPT 

do det the number 

0121 

C6 

06 


LDft 

B #06 


birthdate field lendth 

0123 

8D 

0E 


BSR 

0133 

PROMPT 

do det the date 

0125 

C6 

15 


LDft 

B #15 


street field lendth 

0127 

8D 

0ft 


BSR 

0133 

PROMPT 

do det. the address 

0129 

C6 

11 


LDft 

B #11 


city/state field lendth 

012B 

8D 

06 


BSR 

0133 

PROMPT 

do det- the city-state 

01 2D 

C6 

05 


LDft 

B #05 


zip code field lendth 

01 2F 

3D 

02 


BSR 

0133 

PROMPT 

do det the zip 

0131 

20 

D8 


BRfi 

01 0B 

RESTRT 

do back for another one 

0133 

DF 

38 

PROMPT 

STX 

D 38 

SftUEXl 

save the index 

0135 

Cl 

14 


CMP 

B #14 


is it the name field"? 

0137 

26 

03 


BNE 

013C 


if not> check next 

0139 

CE 

0417 


LDX 

#0417 

# ' NfiME . . . 

else load name index 

01 3C 

Cl 

0ft 


CMP 

B #0ft 


is it the telephone field? 

013E 

26 

03 


BNE 

0143 


if not/ check next 

0140 

CE 

0431 


LDX 

#0431 

#'TEI 

else load telephone index 

0143 

Cl 

06 


CMP 

B #06 


is it the birthdate field? 

0145 

26 

03 


BNE 

014ft 


if not .. check next 

0147 

CE 

044 F 


LDX 

#044F 

# 'BIRTH. . 

.else load birthdate index 

014ft 

Cl 

15 


CMP 

B #15 


is it the street field? 

014C 

26 

03 


BNE 

0151 


if not... check next 

014E 

CE 

0468 


LDX 

#0468 

# STREET. 

. . else 1 oad street i ndex 

0151 

Cl 

11 


CMP 

B #11 


is it the cityxstate field? 

0153 

26 

03 


BNE 

0153 


if not , check next 

0155 

CE 

0484 


LDX 

#0434 

#"CITV .. 

. else load city/state index 

0158 

Cl 

05 


CMP 

B #05 


is it the zip code field? 

015ft 

26 

03 


BNE 

015F 


if no to do print 

015C 

CE 

04ft4 


LDX 

#04ft4 

#'ZIP... 

else load zip index 

015F 

BD 

E07E 


JSR 

E07E 

PDftTftl 

print messade 

0162 

DE 

38 


LDX 

D 38 

SftUEXl 

reload index 

0164 

BD 

0300 


JSR 

0300 

PCRLF 

print- CR & LF 

0167 

7E 

029B 


JMP 

029B 

INPUT 

now do det the keyboard input. 

***** Interrupt, routine - 

permits 

stopp i nd 

and restart ind the 






pr i nt rout i ne or 

return ind to EXEC 

016ft 

B6 

8004 

INTRUP 

LDft 

ft 8004 


look at key board address 

01 6D 

47 



ftSR 

ft 


any act- i on? 

016E 

24 

IF 


BCC 

018F 

CONTP 

if not, continue print ind 

0170 

B6 

8005 


LDft 

ft 8005 


else load keyboard entry 

0173 

81 

03 


CMP 

ft #03 

#'TC 

is it a Control -C? 

0175 

26 

03 


BNE 

017ft 


if not-., check for another 

0177 

7E 

00ftD 

JEXEC1 

JMP 

00RD 

EXEC 

else return to EXEC 

017ft 

31 

13 


CMP 

ft #13 

#"TS 

is it a Control -S? 

01 7C 

26 

11 


BNE 

018F 

CONTP 

if not., continue print ind 

017E 

B6 

3004 

LOOP 

LDft 

ft 8004 


look at keyboard address 

0181 

47 



RSR 

ft 


any action? 

0182 

24 

FR 


BCC 

01 7E 

LOOP 

if not., continue loop ind 

0184 

B6 

3005 


LDft 

ft 3005 


else load keyboard entry 

0187 

31 

03 


CMP 

ft #03 

# X TC 

is it. a Control— C? 

0139 

27 

EC 


BEQ 

0177 

JEXEC 

if soj return to EXEC 

013B 

81 

11 


CMP 

ft #11 

#'TQ 

is it. a Control -Q? 

01 3D 

26 

EF 


BNE 

01 7E 

LOOP 

if not , continue loop ind 

013F 

ft6 

00 

COHTP 

LDft 

ft X 00 


det character from memory 

0191 

81 

00 


CMP 

ft #00 


is it 00? 

0193 

26 

02 


BNE 

0197 

OUTC 

if not, do print it 

0195 

36 

20 


LDft 

ft #20 

# 'SP 

else load a space 

0197 

BD 

E1D1 

OUTC 

JSR 

E1D1 

OUTCH 

arid print it 

019ft 

08 



I NX 



do to next memory location 

019B 

5fl 



DEC 

B 


decrement the counter 

019C 

26 

CC 


BNE 

016ft 

INTRUP 

if not throudh, det another 

019E 

39 



RTS 



else return 

***** 

LIST routine - 

set •» 

up field counters 

and branches to 


INTRUP to list name , birthdate, tel hone 
number and address information 


019F 

C6 

15 LIST 

LDft B #15 


CR + name field lendth 

01R1 

8D 

C7 

BSR 016R 

INTRUP 

do print, name 

01R3 

BD 

E0CC 

JSR E0CC 

OUTS 

print a space 

01R6 

C6 

03 

LDft B #03 


tel. area code field lendth 

01RS 

3D 

C0 

BSR 016ft 

INTRUP 

do print area code 

01Rft 

BD 

E0CC 

JSR E0CC 

OUTS 

print a space 

01RD 

C6 

03 

LDft B #03 


tel. exchande field lendth 

01RF 

3D 

B9 

BSR 016ft 

INTRUP 

do print, exchande 

01B1 

BD 

E0CC 

JSR E0CC: 

OUTS 

print a space 

01B4 

C6 

04 

LDft B #04 


tel. number field lendth 

01B6 

3D 

B2 

BSR 016ft 

INTRUP 

do print number- 

01B8 

BD 

E0CC 

JSR E0C.C. 

OUTS 

print a space 

01BB 

BD 

E0CC 

JSR E0CC: 

OUTS 

print, another space 

01BE 

C6 

06 

LDft B #06 


birthdate field lendth 

01C0 

8D 

R8 

BSR 016R 

INTRUP 

do print birthdate 

01C2 

BD 

0300 

JSR 0300 

PCRLF 

print CR & LF 

01C5 

C6 

15 

LDft B #15 


street field lendth 

01C7 

3D 

R1 

BSR 016ft 

INTRUP 

do print street address 

01C9 

BD 

E0CC 

JSR E0C.C 

OUTS 

print a space 

01CC 

C6 

11 

LDft B #11 


cityxstate field lendth 

01CE 

3D 

9ft 

BSR 016ft 

INTRUP 

do print cityxstate 

01D0 

BD 

E0C.C: 

JSR E0CC 

OUTS 

pr i nt a ;p ace 

01D3 

C6 

05 

LDft B #05 


zip code field lendth 

01D5 

3D 

93 

BSR 016ft 

INTRUP 

do print- zip 

01D7 

BD 

0300 

JSR 0300 

PCRLF 

print CR & LF 

01DR 

BD 

0300 

JSR 0300 

PCRLF 

print C-R & LF 

01DD 

39 


RTS 


and return 


sets up field lengths and starting locations 
in order to ease the user’s problems in di- 
recting sorting operations. 

The flag routine ($0276 through $0299) 
searches for the flag (an asterisk—*) and 
uses LIST to print selected entries. The flag 
need not be at any particular location as 
long as it is in the name field. It could pre- 
cede names for selection, be buried in the 
name or follow the names to be selected. 

The input routine starting at $029B is 
used to format the input data, to recognize 
when input is completed and to permit 
back-space correction or entry canceling. 
The exclamation point (!) is used to stop en- 
try and return to the executive. It should be 
used as the first character in an entry field; 
otherwise, a partial entry will be made. 

Telephone numbers, birth dates and zip 
codes are expected to fill designated fields, 
while names and addresses may be trun- 
cated by using a comma as the final charac- 
ter. The comma can also be used to blank a 
field when the data is unknown by typing 
the comma as the first character in that 
field. If a field is overrun, the overflow char- 
acters will fall into the next field; therefore, 
you must be careful when filling entries. 

Since a comma is used to truncate 
names and addresses, a semicolon should 
be used to separate city from state and last 
name from initials. You can use a return 
(CR) to terminate an entry and cause the 
program to consider that entry complete 
and prepare for the next entry. 

The two routines next in line simply print 
a CR and LF and advise you when the last 
entry space has been filled. 

The rest of the program is based on the 
excellent ideas put forth by Peter Stark’s ar- 
ticle on a BASIC editor (see “An Editor for 
6800 BASIC Programs,” January 1979 Kilo- 
baud Microcomputing, p. 22). In particular, 
his search and replace routines have been 
adapted to the needs of this data-base pro- 
gram. 

SELECT and DELETE are the two primary 
routines. Each uses DELIM to set up a de- 
limiter character and READST to set up a 
string for matching to names, birth months 
or zip codes in the stored data. The delim- 
iter character must be a number sign (#) for 
use in selecting names, B for choosing birth 
months and Z for selecting zip codes. 

SELECT will print out as many entries as 
have matching characteristics with the 
string. DELETE will ask you whether you 
wish to delete an entry chosen to match the 
string. If you do not accept the offered en- 
try, DELETE will go back to get another until 
all matching entries have been offered. 

Listing 2 is a complete machine-code list- 
ing of the program followed by a decoded 
printout of the character strings used as 
messages. Examples 1-8 show the use of 
the data-base program. ■ 


42 Microcomputing, October 1980 


***** SORT routines — name * birth year and zip code sort routines 


01DE 

CE 

022R 

SORTN 

LDX 

#0228 


index for sort- field length 

01E1 

36 

14 


LDR 

R #14 


name sort field length 

01E3 

R7 

00 


STR 

R X 00 



01E5 

86 

01 


LDR 

R #01 


name field start location 

01E7 

R7 

09 


STR 

R X 09 



01E9 

86 

51 


LDR 

R #51 


next name field start- 

01EB 

R7 

0B * 


STR 

R X 0B 



01 ED 

86 

3C 


LDR 

R #3C 


distance to next name field 

01EF 

R7 

13 


STR 

R X 13 



01F1 

R7 

42 


STR 

R X 42 



01F3 

20 

2C- 


BRR 

0221 

SORT 

3o do the sort i na 

01F5 

CE 

022R 

SORTZ 

LDX 

#022R 


index for sort field lenat-h 

01FS 

86 

05 


LDR 

fl #05 


zip code field len3th 

01FR 

R7 

00 


STR 

R X 00 



01FC 

86 

4B 


LDR 

fl #46 


zip code field start location 

01FE 

R7 

09 


STR 

R X 09 



0200 

86 

9B 


LDR 

R #96 


location of next zip 

0202 

R7 

0B 


STR 

R X 0B 



0204 

36 

4B 


LDR 

R #4B 


distance to next zip 

0206 

R7 

13 


STR 

R X 13 



0208 

R7 

42 


STR 

fl X 42 



020FI 

20 

15 


BRR 

0221 

SORT 

3o do the sort i na 

020C 

CE 

022R 

S0RTB 

LDX 

#0228 


index for s art field length 

020F 

86 

06 


LDR 

fl #06 


birthdate field len3th 

0211 

R7 

00 


STR 

fl X 00 



0213 

36 

IF 


LDR 

R #1F 


birthdate field start location 

0215 

R7 

09 


STR 

R X 09 



0217 

86 

6F 


LDR 

R #6F 


location of next birthdate 

0219 

R7 

0B 


STR 

fl X 0B 



021B 

86 

4R 


LDR 

R #4R 


di stance to next birthdate 

021D 

R7 

13 


STR 

fl X 13 



02 IF 

R7 

42 


STR 

fl X 42 



0221 

CE 

0500 

SORT 

LDX 

#0500 

#DATA 

1 oad data i ndex 

0224 

SC 

12C0 

NEREND 

CPX 

#12C0 

#DRTEND- 

$50 index of last possible entry 

0227 

27 

06 


BEQ 

022F 

SRTRET 

return if at last entry 

0229 

C6 

14 


LDR 

B #14 


sort field len3th 

022B 

6D 

51 


TST 

X 51 


check to see if at data end 

022D 

26 

01 


BNE 

0230 

CKNEXT 

if not* continue 

022F 

39 


SRTRET 

RTS 



else return 

0230 

DF 

38 

CKNEXT 

STX 

D 33 

SRUEX1 

save i ndex 

0232 

R6 

01 


LDR 

R X 01 


load character 

0234 

R1 

51 


CMP 

R X 51 


compare with next field 

0236 

26 

0C 


BNE 

0244 

CKGTLT 

if not same* see which laraer 

0238 

03 



I NX 



else move on 

0239 

5R 



DEC 

B 


arid decrement counter 

023R 

26 

F6 


BNE 

0232 

CKNEXT +2 

continue if not at field end 

023C 

C6 

3C 


LDR 

B #3C 


else 3o to next field 

023E 

03 



I NX 



by adoancina step 

023F 

5R 



DEC 

B 


by step 

0240 

26 

FC 


BNE 

023E 


keep at it till at next field 

0242 

20 

E0 


BRR 

0224 

NEREND 

arid sort- next pair of fields 

0244 

23 

21 

CKGTLT 

BLS 

0267 

F INEND 

if less 3o to field end 

0246 

C6 

50 


LDR 

B #50 


else bubble sort them 

0248 

DE 

33 


LDX 

D 33 

SAUEX1 

by saoina the index 

024R 

R6 

00 

NOT VET 

LDR 

R X 00 


arid interchanaina characters 

024C 

97 

35 


STR 

R D 35 

TEMP 

between DRTR and TEMP locations 

024E 

R6 

50 


LDR 

R X 50 


unt i 1 they ' re all 

0250 

A7 

00 


STR 

R X 00 


i nterchanaed 

0252 

96 

35 


LDR 

R D 35 

TEMP 


0254 

R7 

50 


STR 

R X 50 



0256 

03 



I NX 




0257 

5fl 



DEC 

B 



0258 

26 

F0 


BNE 

024R 

NOTVET 

keep at it till done 

025R 

C6 

R0 


LDR 

B #R0 


and then load the counter 

025C 

09 


NMINUS 

DEX 



to backup two entries 

025D 

sn 



DEC 

B 


now 3o back to last entry 

025E 

26 

FC 


BNE 

025C 

NMINUS 

to see if it needs to move 

0260 

3C 

0500 


CPX 

#0500 

#DRTR 

but don ' t 3o too f ar 

0263 

2D 

BC 


BL.T 

0221 

SORT 

if so* 3o back and sort aaain 

0265 

20 

BD 


BRR 

0224 

NEREND 

else continue from here 

0267 

03 


F INEND 

I NX 



now ao to field end 

0263 

5fl 



DEC 

B 


step by step 

0269 

26 

FC 


BNE 

0267 

F INEND 

there yet? 

0266 

C6 

3C 


LDR 

B #3C 


ok.* now ao to next sort field 

026D 

03 



I NX 



step by step 

026E 

5fl 



DEC 

B 



026F 

26 

FC 


BNE 

026D 


once you're there 

0271 

20 

B1 


BRR 

0224 

NEREND 

sort the next pair of fields 

0273 

7E 

010B 

JRES 

JMP 

010B 

RESTRT 

used as a Jump island 

***** FLRG rout. in© - 

to select and print, flawed entries 

0276 

CE 

0500 

FLRG 

LDX 

#0500 

#DRTR 

data start index 

0279 

06 

15 


LDR 

B #15 


CR + name field lenath 

027B 

R6 

00 


LDR 

R X 00 


3et a character from memory 

027D 

81 

2fl 


CMP 

fl #28 

#•* 

is it the flaa <*>? 

027F 

27 

0F 


BEQ 

0290 

BACK 

if so* 3o back uf 

0281 

08 



I NX 



if not* 3o to next, character 

0282 

5fi 



DEC 

B 


decr ement- the counter 

0283 

26 

F6 


BNE 

027B 


if not. at. field end* do aaain 

0285 

C6 

3B 


LDR 

B #3B 


else 3o to next field 

0287 

08 



I NX 



step by step 

0283 

5R 



DEC 

B 


at end yet? 

0289 

26 

FC 


BNE 

0287 


if not* do it aaain 

028B 

R6 

00 


LDR 

R X 00 


then 3et a character 

028D 

26 

ER 


BNE 

0279 

FLflG+3 

if not 00* check this field 

023F 

39 



RTS 



else return 

0290 

09 


BACK 

DEX 



back up to start of 

0291 

5C 



INC 

B 


name field 

0292 

Cl 

15 


CMP 

B #15 


throuah yet.? 

0294 

26 

FR 


BNE 

0290 

BACK 

if not* keep backina 

0296 

BD 

01 9F 


JSR 

019F 

LIST 

else ao 1 i st entry 

0299 

20 

DE 


BRR 

0279 

FLflG+3 

arid look for next flaa 


IMAGINE. 

A computer game that has drawn 
the attention of the national 
news media. 

A computer game that has people 
around the world clamoring for it. 

A computer game that turns your 
love life into a menage a trois... 
you, your mate, and your computer! 


That’s Interlude-the hottest new 
software program for personal 
computers. 

But it’s more than just a game. 

It’s an experience that will tantalize 
you . . . romanticize you . . . fantasize 
you. ..and often surprise you. 

Interlude begins with a unique 
computer interview of the partici- 
pants to determine their mood. 
Then it searches its memory to 
select the best Interlude for the 
occasion. You may be referred to 
the instruction manual which de- 
scribes most of the 106 Interludes, 
or your instructions may appear 
on your screen if you’ve chanced 
to hit upon one of the many sur- 
prise Interludes buried within the 
program. (When you discover 
secret Interlude #99, your love life 
may never be the same again!) 

Interlude. ..it’s fun.. .it’s fanciful... 
it’s fantastic. It’s the computer game 
for adults. Are you ready for it? 

Interlude 

The Ultimate Experience. 


INTERLUDE Dept. K-9 10428 Westpark, Hous- 
ton, TX 77042. Rush me my copy of Interlude. 

Name Age 

Address 

City State Zip 

□ Apple II* ( 16K) □ TRS-80** (Level II- 
16K) □ $14.95 for cassette □$17.95 for 
diskette. Add $1.50 for shipping. Texas 
residents add 6% sales tax. 

□ My check (payable to Interlude) is enclosed. 
Charge my □ Mastercharge □ Visa 

Account No 

Expiration Date 

MasterCharge Bank Code 

Signature 

(Charge customers must sign.) 

CHARGE CUSTOMERS: Order by phone toll- 
free! 1-800-231-5768 Ext. 306 
(Tex: 1-800-392-2348 Ext. 306) 

•Registered trademark of Apple Computers. Inc. 
••Registered trademark of Radio Shack, a Tandy Co. 

AVAILABLE FOR IMMEDIATE DELIVERY. 


Reader Service index— page 241 


Microcomputing, October 1980 43 




NORTHSTAft™ 

SOFTWARE 


INV€NTOIW-2™ $275. 

uuith order entry 

• Open ended file capacity 

• Dual location inventory 
management 

• Invoicing 

• Extensive reporting 
capabilities 

• Full back order capability 

• Optional transaction file 


MflllROOM™ $115. 

Sophisticated mailing list 
facility. Data base is flexible 
enough to permit selection on 
a complex set of criteria. 


T€XTUJRIT€R III™ $125. 

A powerful text formatting 
program for this generation 
of complex documents. 


P/M PlfiNN€R™ $175. 

Capital equipment inventory 
system with preventative 
maintenance scheduling. 


INV€NTORV-i™ $115. 

Useful where the order entry 
capabilities of INVENTORY-2 
are not required and the in- 
ventory size does not exceed 
500 items. 


HOUS€K€€P€R™ $59.95 

Subroutines and utilities. 


HOUS€K€€P€R II™ $59.95 

More subroutines and utilities. 


TOOL-1™ $29.95 

Basic program cross 
reference utility. 


***** INPUT routine - accepts input data and puts in correct place 


029B 

BD 

ElftC 

INPUT 

JSR 

ElflC 

INCH 

det character- from keyboard 

029E 

31 

21 


CMP 

R #21 

#' ! 

is it an !? 

02R0 

26 

03 


BNE 

02R5 


if not., continue 

02R2 

7E 

00RD 


JMP 

00RD 

EXEC 

else do to EXEC 

02R5 

SI 

0F 


CMP 

R #0F 

#'TQ 

is it Contro 1 -0? 

02R7 

26 

10 


BNE 

02B9 

CONT 

if not* continue 

02R9 

CE 

0500 


LDX 

#0500 

#DflTfl 

else load DATA index 

02RC 

8D 

36 


BSR 

02E9 

FNDEND 

find end of entries 

02RE 

C6 

50 


LDR 

B #50 


set counter for entry space 

02B0 

09 


BfiCKUP 

DEX 



and backup to start 

0261 

5R 



DEC 

B 


of current entry 

02B2 

26 

FC 


BNE 

02B0 

BACKUP 

if not done , do adain 

02B4 

6F 

00 


CLR 

X 00 


clear first location 

0266 

7E 

0111 


JMP 

0111 

RESTRT+6 

and start entry adain 

0269 

81 

0D 

CONT 

CMP 

fl #0D 

#'CR 

is it a CR? 

02BB 

27 

66 


BEG 

0273 

JRES 

if so. do back to RESTRT 

02BD 

31 

08 


CMP 

R #08 

#"BS 

is it a BS? 

02BF 

26 

0E 


BNE 

02CF 

CONTI 

i f riot , cont i nue 

02C1 

09 



DEX 



else backup one 

02C2 

SC 



INC 

B 


space., and 

02C3 

36 



PSH 

R 


save ACC fl 

02C4 

R6 

00 


LDR 

fl X 00 


det. a character 

02C6 

31 

0D 


CMP 

R #0D 

#'CR 

is it a CR? 

02C8 

32 



PUL 

fl 


restore RCC R 

02C9 

26 

D0 


BNE 

029B 

INPUT 

if not CR.. det keyboard entry 

02CB 

08 



I NX 



else do forward 

02CC 

5fl 



DEC 

B 


a space 

02CD 

20 

CC 


BRR 

029B 

INPUT 

arid det the entry 

02CF 

81 

2C 

CONTI 

CMP 

fl #2C 

#'* 

is it a *? 

02D1 

26 

0R 


BNE 

02DD 

C0NT2 

if not., continue 

02D3 

86 

00 

HRUECM 

LDR 

fl #00 


else load 00 

02D5 

R7 

00 


STR 

fl X 00 


and store to fill 

02D7 

08 



I NX 



until field is full 

02D3 

5R 



DEC 

B 


full field? 

02D9 

26 

F8 


BNE 

02D3 

HRUECM 

if not* repeat 

02DB 

20 

06 


BRR 

02E3 

RETURN 

else start back for another one 

02DD 

R7 

00 

C0NT2 

STR 

R X 00 


store the character 

02DF 

08 



I NX 



arid bump the index counter- 

02E0 

5fl 



DEC 

B 


decrement counter; field full? 

02E1 

26 

04 


BNE 

02E7 

C0NT3 

if not* do C0NT3 

02E3 

BD 

E0CC 

RETURN 

JSR 

E0CC 

OUTS 

else print a space 

02E6 

39 



RTS 



arid return 

02E7 

20 

B2 

C0NT3 

BRR 

029B 

INPUT 

do for more input 

02E9 

6D 

01 

FNDEND 

TST 

X 01 


look at next, character 

02E6 

27 

0R 


BEG 

02F7 

ENDRET 

if 00.. return 

02ED 

C6 

50 


LDR 

B #50 


else load counter 

02EF 

03 


BOUNCE 

I NX 



and move ahead 

02F0 

5R 



DEC 

B 


step by step 

02F1 

26 

FC 


BNE 

02EF 

RDUNCE 

if not throudh* keep adoancind 

02F3 

8D 

05 


BSR 

02FR 

CKSPRC 

do check if at end 

02F5 

20 

F2 


BRR 

02E9 

FNDEND 

arid see if at next empty spot 

02F7 

01 


ENDRET 

NOP 




02FS 

01 



NOP 




02F9 

39 



RTS 



do back where you came from 

02FR 

SC 

1310 

CKSPRC 

CPX 

#1310 

#DflTEND 

end of space <45 entries) 

02FD 

27 

0C 


BEG 

030B 

MEMFUL 

if at end* tell user 

02FF 

39 



RTS 



else return 

***** CR LF routine - 

prints a CR 

& LF 


0300 

DF 

38 

PCRLF 

STX 

D 38 

SAUEX1 

store the index 

0302 

CE 

0400 


LDX 

#0400 

#'CR LF. . . 

.load messade index 

0305 

BD 

E07E 


JSR 

E07E 

PDRTfll 

print the CR & LF 

0308 

DE 

38 


LDX 

D 38 

SflUEXl 

restore index 

030R 

39 



RTS 



and return 

***** MEMor-y 

FUL1 Routine 

- prints MEMORY FULL when allocated 






memory space is 

f i 1 led 

0306 

CE 

0406 

MEMFUL 

LDX 

#0406 

# 'MEM. . . 

load messade index 

030E 

BD 

E07E 


JSR 

E07E 

PDRTfll 

print the messade 

0311 

7E 

1730 


JMP 

1780 

CFM/3 

and return to Manader 

***** READ STrind routine 

- accepts keyboard input, of string to be 






found 

in DATA 


0314 

BD 

ElflC 

RERDST 

JSR 

ElflC 

INCH 

det keyboard i nput 

0317 

11 



CBR 



compare with RCC B 

0318 

27 

09 


BEG 

0323 

EXITRS 

if eaual* return 

031fi 

81 

0D 


CMP 

fl #0D 

#'CR 

is it a CR? 

03 1C 

27 

05 


BEG 

0323 

EXITRS 

if so* return 

031E 

R7 

00 


STR 

fl X 00 


else store the character 

0320 

03 



I NX 



bump the index and 

0321 

20 

FI 


BRR 

0314 

REflDST 

do back for another input 

0323 

39 


EXITRS 

RTS 



return 


DIGITAL MARKETING 

2670 Cherry Lone 
Ulolnut Creek, CO 94596 
(415) 938-2880 ✓ ei 

INVENTORY 1 & 2, MAILROOM, P/M PLANNER, 
HOUSEKEEPER I & II. & TOOL-1 are trademarks 
of the Software Works, Inc. TEXTWRITER III IS A 
TRADEMARK OF ORGANIC SOFWARE 


***** FIND STrind routine 

- searches for STRING; if found returns 






with 

RCC B = 1 


0324 

96 

40 

FINDST 

LDR 

fl D 40 

STRING- 1 

det- the delimiter 

0326 

81 

23 


CMP 

fl #23 

#'# 

is it a #? 

0323 

27 

16 


BEG 

0340 

NFIND 

if so* do lookind for- a name 

032R 

81 

5ft 


CMP 

R #5fl 

#'Z 

is it a Z? 

032C 

27 

0C 


BEG 

033R 

ZFIND-2 

if so* do lookind for a zip 

032E 

81 

42 


CMP 

R #42 

#'B 

is it. a B? 

0330 

26 

67 


BNE 

0399 

JEXEC2 

if not* do to EXEC 

***** select 

routine 

— prints entries based 

on user selection 





of 

name* 

zip code or 

birthdate 

038C 

8D 

EC 

SELECT 

BSR 

037R 

DELIM 

det. delimiter and STRING 

033E 

CE 

0500 


LDX 

#0500 

#DRTR 

load DATA index 

0391 

BD 

0300 


JSR 

0300 

PCRLF 

print CR & LF 


44 Microcomputing, October 1980 



THE 

HiD'STLHNTiC 
— COMPUTER — 
SHOW 

WASHINGTON, D.C. 

D C. ARMORY/STARPLEX 
THURSDAY-SUNDAY 
SEPTEMBER 18-21 
11 A M TO 9 P.M. THURS.-SAT. 
11 A M. TO 5 P.M. SUN. 


THE 

NHTiONHL 

CONFUTES 

SHOWS 

HAVE WE 
COT A PROGRAM 
FOR YOU! 


Please send me: 


The new computers are showing off. 

Over $50 million worth of equipment in over 100,000 
square feet of space, including the latest software and hard- 
ware for business, government, home and personal use. Every- 
thing the NCC show has and more will be on display, and you can 
buy it all right on the spot. 

Computers costing $150 to $250,000, mini and micro com- 
puters, data- and word-processing equipment, telecommunica- 
tions, office machines, peripheral equipment and services from 
leading names in the industry like IBM, Xerox, Radio Shack 
and Apple will all be there. 

There’ll be conferences on business uses of small to 
medium sized computers, and howto make purchasing 
evaluations. 

There’ll be robots, computerized video games, 
computer art and computer music. 

Everyone from kids to people who earn their liv- 
ing with computers will have a great time at the larg- 
est computer show ever organized in each region. 
Admission for adults is $5. The public is 
invited, and no pre-registration is necessary. 
Don’t miss the computer show that 
mixes business with pleasure. Show 
up for the show. 

THE 


LOMrlilLn 

SHOH 


CHICAGO 

McCORMICK PLACE 
THURSDAY-SUNDAY 
OCTOBER 16-19 
11 A.M. TO 9 PM. THURS.-SAT. 
11 A.M. TO 5 P.M. SUN. 


Produced by National Computer Shows, 
824 Boylston Street, Chestnut Hill, MA 02167. 
Telephone (617) 739-2000. 


NORTHERS! 
COHFUTER 
SHOH 

BOSTON 

HYNES AUDITORIUM 
PRUDENTIAL CENTER 
THURSDAY-SUNDAY 
NOVEMBER 20-23 

11 A.M. TO 9 P.M. THURS.-SAT. 
11 A.M. TO 5 P.M. SUN. 


□ adult tickets at $5 each. I have enclosed the proper amount of $ 

□ Information on the show's conference program. 

□ Hotel registration information □ Exhibitor rental information 

Please print: Name „ 

Address 

City State Zip 


Reader Service index— page 241 


Microcomputing, October 1980 45 


MORE FOR YOUR 3 
RADIO SHACK TRS-80 
MODEL I ! 

★ MORE SPEED 

10-20 times faster than Level II BASIC. 

★ MORE ROOM 

Compiled code plus VIRTUAL 
MEMORY makes your RAM act larger. 


0394 

8D 

3E 

FLOOP 

BSR 

0324 

FINDST 

do find the STRING 

0396 

5D 



TST 

B 


find one? 

0397 

26 

03 


BNE 

039C 

LQOKCR 

if so, do back to CR 

0399 

7E 

00RD 

JEXEC2 

JMP 

00RD 

EXEC 

else do EXEC 

039C 

09 


LQOKCR 

DEX 



start backind up 

039D 

06 

00 


LDR 

R X 00 


det a character 

039F 

SI 

0D 


CMP 

R #0D 

# •' CR 

is it a CR? 

03fll 

26 

F9 


BNE 

039C 

LQOKCR 

if not, keep backind 

03R3 

BD 

01 9F 


JSR 

019F 

LIST 

else print entry 

03R6 

6D 

01 


TST 

X 01 


is it the last one? 

03R8 

27 

EF 


BEQ 

0399 

JEXEC2 

if so, do EXEC 

03RR 

8C 

1310 


CPX 

#1310 

#DRTEND 

at end of memory? 

03RD 

26 

E5 


BNE 

0394 

FLOOP 

if not, look for another 

03RF 

20 

E8 


BRR 

0399 

JEXEC2 

else do EXEC 


★ MORE INSTRUCTIONS 

Add YOUR commands to its large in- 
struction set! 

Far more complete than most Forths: 
single & double precision, arrays, 
string-handling, more. 

★ MORE EASE 

Excellent full-screen Editor, structured 
& modular programming 
Optimized for your TRS-80 with 
keyboard repeats, upper/lower case 
display driver, single- & double-width 
graphics, etc. 

★ MORE POWER 

Forth operating system 
Interpreter AND compiler 
Internal 8080 Assembler 
(Z80 Assembler also available) 

VIRTUAL I/O for video and printer, 
disk and tape 

(10-Megabyte hard disk available) 

nt FORTH 

THE PROFESSIONAL FORTH 
FOR TRS-80 


Prices! 

MMSFORTH Disk System VI. 9 (requires 1 

disk drive & 16K RAM) just $79.95* 

MMSFORTH Cassette System VI. 8 (requires 
Level II BASIC & 16K RAM) $59.95* 

AND MMS GIVES IT 
PROFESSIONAL SUPPORT 

Source code provided 
MMSFORTH Newsletter 
Programming staff available 
Many demo programs aboard 
MMSFORTH User Groups 

FLOATING POINT MATH (L.2 BASIC ROM 
routines plus Complex numbers, 
Rectangular-Polar coordinate conversions, 
Degrees mode, more), plus a full Z80 
ASSEMBLER; all on one diskette . . . $29.95* 

THE DATAHANDLER, a very sophisticated 
database management system operable by 
non-programmers (requires 1 drive and 32K 
RAM); with manuals $59.95* 

Other packages under development 

FORTH BOOKS AVAILABLE 


MICROFORTH PRIMER — comes with 

MMSFORTH; separately $15.00* 

USING FORTH — more detailed and advanc- 
ed than above $25.00* 

URTH TUTORIAL MANUAL — very readable 

intro, to U/Rochester Forth $19.95* 

CALTECH FORTH MANUAL — good on 
Forth internal structure, etc $6.95* 

* — Software prices are for single-system 
user license and include manuals. Add $2.00 
S/H plus $1.00 per additional book; Mass, 
orders add 5% tax. Foreign orders add 15%. 
UPS COD, VISA & M/C accepted; no unpaid 
purchase orders, please. 

Send SASE for free MMSFORTH information. 

Good dealers sought. 


MMSFORTH is available from your 
computer dealer or 

MILLER MICROCOMPUTER 
SERVICES (K10) 255 

61 Lake Shore Road, Natick, MA 01760 
(617) 653-6136 


***** DELETE routine - deletes one entry based upon user's choice 
of name , zip or birt-hdate; dels user 
confirmation before deleting entry 


0381 

BD 

037R 

DELETE 

JSR 

037R 

DELIM 

det delimiter and STRING 

03B4 

CE 

0500 


LDX 

#0500 

#DRTR 

load DRTR index 

03B7 

BD 

0324 

RPTDEL 

JSR 

0324 

FINDST 

find the STRING 

03BR 

5D 



TST 

B 


find one? 

03BB 

26 

02 


BNE 

03BF 

LOOKC 

if so, back up to a CR 

03 BO 

20 

DR 


BRR 

0399 

JEXEC2 

if not , do EXEC 

03BF 

09 


LOOKC 

DEX 



start, backind up 

03C0 

R6 

00 


LDR 

R X 00 


det a character 

03C2 

81 

0D 


CMP 

fi #0D 

#'CR 

is it a CR? 

03C4 

26 

F9 


BNE 

03BF 

LOOKC 

if not, keep backind 

03C6 

BC> 

0300 


JSR 

0300 

PCRLF 

print CR & LF 

03C9 

CE 

04 DD 


LDX 

#04DD 

# DEI 

load messade- index 

03CC: 

BD 

E07E 


JSR 

E07E 

PDRTR1 

and print messade 

03CF 

DE 

38 


LDX 

D 38 

SRUEX1 

save the i ndex 

03D1 

BD 

019F 


JSR 

019F 

LIST 

print the entry 

03D4 

BD 

E1RC 


JSR 

E1RC 

INCH 

det a character from keyboard 

03D7 

SI 

59 


CMP 

R #59 

#'V 

is it a V? 

03D9 

27 

0B 


BEQ 

03E6 

DELET1 

if so, do delete the entry 

03DB 

6D 

01 


TST 

X 01 


last entry? 

03DD 

27 

BR 


BEQ 

0399 

JEXEC2 

if so, do EXEC 

03DF 

SC 

1310 


CPX 

#1310 

#DRTEND 

end of memory? 

03E2 

26 

D3 


BNE 

03B7 

RPTDEL 

if not, check another entry 

03E4 

20 

B3 


BRR 

0399 

JEXEC2 

else do EXEC 

03E6 

09 


DELET1 

DEX 



start, backind up 

03E7 

R6 

00 


LDR 

R X 00 


load a character 

03E9 

81 

0D 


CMP 

R #0D 

# 'CR 

is it a CR? 

03EB 

26 

F9 


BNE 

03E6 

DELET1 

if not, keep backind 

03ED 

86 

5B 


LDR 

R #5B 

#'C 

load a C 

03EF 

R7 

01 


STR 

R X 01 


and store as 1st entry char. 

03F1 

BD 

01DE 


JSR 

0 1 DE 

SORTN 

do SORTN to put this entry last 

03F4 

C6 

50 


LDR 

B #50 


load counter with entry size 

03F6 

08 


CLERR 

I NX 



bump the index 

03F7 

6F 

00 


CLR 

X 00 


clear a character 

03F9 

5R 



DEC 

B 


decrement the counter; at end? 

03FR 

26 

FR 


BNE 

03F6 

CLERR 

if not, do adain 

03FC 

20 

9B 


BRR 

0399 

JEXEC2 

when done, do EXEC 

6332 

C6 

20 


LDR 

B #20 


load the counter to det to 

0334 

08 


BFIND 

I NX 



birthdate location arid move it 

0335 

5R 



DEC 

B 


there - throudh? 

0336 

26 

FC 


BNE 

0334 

BFIND 

if not, keep movind 

0338 

20 

06 


BRR 

0340 

NFIND 

else do lookind 

033R 

C6 

4fl 


LDR 

B #4R 


load the counter to det. to 

033C 

08 


ZFIND 

I NX 



zip code location and move it 

033D 

5R 



DEC 

B 


there - throudh? 

033E 

26 

FC 


BNE 

033C 

ZFIND 

if not, keep movind 

0340 

08 


NFIND 

I NX 



now move one more space 

0341 

R6 

00 


LDR 

R X 00 


load a character 

0343 

91 

41 


CMP 

fl D 41 

STRING 

match 1st STRING character? 

0345 

26 

25 


BNE 

036C 

NOTF 

if not, do housekeep and return 

0347 

DF 

3R 

FOUND 1 

STX 

D 3R 

SRUEX 

else save index here 

0349 

DF 

3C 


STX 

D 3C 

TEMPSO 

and here 

034B 

CE 

0041 


LDX 

#0041 

#STR I NG 

then load STRING index 

034E 

DF 

3E 


STX 

D 3E 

TEMPST 

and store it. here 

0350 

DE 

3C 

FLOOP 1 

LDX 

D 3C 

TEMPSO 

now load "data" index 

0352 

R6 

00 


LDR 

R X 00 


and put the 1st char, in fiCC R 

0354 

0S 



I NX 



bump the index 

0355 

DF 

3C 


STX 

D 3C 

TEMPSO 

and store new index 

0357 

DE 

3E 


LDX 

D 3E 

TEMPST 

load STRING index 

0359 

E6 

00 


LDR 

B X 00 


and put. its 1st char, in fiCC B 

035B 

08 



I NX 



bump its index 

035C 

DF 

3E 


STX 

D 3E 

TEMPST 

and store i t 

035E 

11 



CBR 



do characters match? 

035F 

26 

09 


BNE 

036R 

NGTF-2 

if not., do housekeep and return 

0361 

9C 

36 


CPX 

R D 36 

SPOIN 

else see if at. end of STRING 

0363 

26 

EB 


BNE 

0350 

FLOOP 1 

if not compare next characters 

0365 

DE 

3R 


LDX 

D 3R 

SRUEX 

else load oridinal index 

0367 

C6 

01 


LDR 

B #01 


set RCC B to 1 and 

0369 

39 



RTS 



return 

***** HOT Found routine - 

resets 

index and 

sets RCC B to 0 






if STRING not found 

036R 

DE 

3fl 


LDX 

D 3R 

SRUEX 

load index 

036C 

08 


NOTF 

I NX 



and start lookind for a CR 

036D 

R6 

00 


LDR 

R X 00 


det a character 

036F 

81 

0D 


CMP 

R #0D 

# ■' CR 

is it a CR? 

0371 

26 

F9 


BNE 

036C 

NOTF 

if not, look adain 

0373 

6D 

01 


TST 

X 01 


is next character- a 00? 

0375 

26 

RD 


BNE 

0324 

FINDST 

if not, look for STRING adain 

8377 

06 

00 


LDR 

B #00 


else set. RCC B to 00 

0379 

39 



RTS 



arid return 


***** DELIMiter routine - dets and stores the delimiter character 

used to select, name.* zip, or birt-hdate 
information 


46 Microcomputing, October 1980 


037R CE 0040 DELIM 
037D BD E0C-C 
0380 BO E1RC 

0383 16 

0384 R7 00 

0386 08 

0387 80 8B 
0389 DF 36 
038B 39 


LDX #0040 
JSR E0CC 
JSR E1RC 

STR R X 00 
I NX 

BSR 0314 
STX 0 36 
RTS 


#STRING-1 set- index for delimiter 
OUTS print a space 

INCH 3et the delimiter 

put it in RCC B 
and in indexed location 
bump the index and 
RERDST ao Set STRING 

SPG IN store index for end of STR I Hu 

and return 


Listing 2. 


00R0 

02 

21 

00 

31 

44 

26 

06 

7E 

03 

B1 

7E 

17 

30 

BD 

03 

00 

00B0 

CE 

04 

BD 

BD 

E0 

7E 

BD 

El 

RC- 

81 

4E 

27 

IF 

81 

42 

27 

00C0 

20 

81 

5R 

27 

21 

31 

4C 

27 

20 

31 

46 

27 

2B 

81 

45 

27 

0000 

D9 

31 

41 

27 

36 

81 

53 

26 

CR 

7E 

03 

8C 

B0 

01 

DE 

28 

00E0 

08 

BD 

02 

0C 

20 

03 

BD 

01 

F5 

BD 

03 

00 

CE 

05 

00 

BD 

00F0 

01 

9F 

60 

01 

26 

F9 

20 

B5 

BD 

03 

00 

BD 

02 

76 

20 

F6 

0100 

CE 

05 

00 

6F 

00 

08 

8C 

13 

11 

26 

F8 

CE 

05 

00 

BD 

02 

0110 

E9 

BD 

03 

00 

86 

00 

R7 

00 

03 

C6 

14 

SD 

16 

C6 

0R 

80 

0120 

12 

C6 

06 

3D 

0E 

C6 

1 5 

3D 

0R 

C6 

11 

SD 

06 

C6 

05 

30 

0130 

02 

20 

08 

DF 

38 

Cl 

14 

26 

03 

CE 

04 

17 

Cl 

0R 

26 

03 

0140 

CE 

04 

31 

Cl 

06 

26 

03 

CE 

04 

4F 

Cl 

15 

26 

03 

CE 

04 

0150 

68 

Cl 

11 

26 

03 

CE 

04 

84 

Cl 

05 

26 

03 

CE 

04 

R4 

BD 

0160 

E0 

7E 

DE 

38 

BD 

03 

00 

7E 

02 

9B 

B6 

30 

04 

47 

24 

IF 

0170 

B6 

80 

05 

81 

©3 

26 

03 

7E 

00 

RD 

31 

13 

26 

11 

B6 

80 

0180 

04 

47 

24 

FR 

B6 

80 

05 

3 1 

03 

27 

EC 

31 

11 

26 

EF 

R6 

0190 

00 

81 

00 

26 

02 

36 

20 

BD 

El 

01 

08 

5R 

26 

CC 

39 

C6 

01R0 

15 

SD 

C7 

BD 

E0 

CC 

C6 

03 

3D 

C0 

BD 

E0 

CC 

C6 

03 

3D 

01B0 

B9 

BD 

E0 

CC 

C6 

04 

3D 

B2 

BD 

E0 

C-C 

BD 

E0 

CC 

C6 

86 

01C0 

80 

R3 

BD 

03 

00 

C6 

1 5 

SD 

R1 

BD 

E0 

CC 

C6 

11 

80 

9R 

01D0 

BD 

EG 

CC 

C6 

05 

8D 

93 

BD 

03 

00 

BD 

03 

00 

39 

CE 

02 

01E0 

2fl 

36 

14 

R7 

00 

86 

01 

R7 

09 

36 

51 

R7 

0B 

86 

3C 

R7 

01F0 

13 

R7 

42 

20 

2C 

CE 

02 

2R 

86 

05 

R7 

00 

86 

4B 

R7 

09 

0200 

86 

9B 

R7 

0B 

86 

4B 

R7 

13 

R7 

42 

20 

15 

CE 

02 

2R 

36 

0210 

06 

R7 

00 

86 

IF 

R7 

09 

S6 

6F 

R7 

0B 

86 

4R 

R7 

13 

R7 

0220 

42 

CE 

05 

00 

SC 

12 

C0 

27 

06 

C6 

14 

6D 

51 

26 

01 

39 

0230 

DF 

38 

R6 

01 

R1 

51 

26 

0C 

08 

5R 

26 

F6 

C6 

3C 

08 

5R 

0240 

26 

FC 

20 

E0 

23 

21 

C6 

50 

DE 

38 

R6 

00 

97 

35 

R6 

50 

0250 

R7 

00 

96 

35 

R7 

50 

08 

5R 

26 

F0 

C6 

R0 

09 

5R 

26 

FC 

0260 

8C 

05 

00 

2D 

BC. 

20 

BD 

08 

5R 

26 

FC 

C6 

3C 

08 

5R 

26 

0270 

FC 

20 

B1 

7E 

01 

0B 

CE 

05 

00 

C6 

15 

R6 

00 

31 

2R 

27 

0230 

0F 

08 

5R 

26 

F6 

C6 

3B 

08 

5R 

26 

FC 

R6 

00 

26 

Eh 

39 

0290 

09 

5C 

Cl 

15 

26 

FR 

BD 

01 

9F 

20 

DE 

BD 

El 

RC 

31 

21 

02R0 

26 

03 

7E 

00 

RD 

81 

0F 

26 

10 

CE 

05 

00 

80 

3B 

C6 

50 

02B0 

09 

5R 

26 

FC 

6F 

00 

7E 

01 

11 

81 

00 

27 

B6 

81 

08 

26 

02C0 

0E 

09 

5C 

36 

R6 

00 

81 

00 

32 

26 

00 

08 

5R 

20 

CC 

31 

0200 

2C 

26 

0R 

36 

00 

R7 

00 

03 

5R 

26 

F8 

20 

06 

R7 

00 

08 

02E0 

5R 

26 

04 

BD 

E0 

CC 

39 

20 

B2 

6D 

01 

27 

0R 

C6 

50 

08 

02F0 

5R 

26 

FC 

3D 

05 

20 

F2 

01 

01 

39 

3C 

13 

10 

27 

0C 

39 

0300 

OF 

33 

CE 

04 

00 

BD 

EG 

7E 

DE 

33 

39 

CE 

04 

06 

BD 

E0 

0310 

7E 

7E 

17 

30 

B0 

El 

RC 

1 1 

27 

09 

31 

00 

27 

05 

R7 

00 

0320 

03 

20 

FI 

39 

96 

40 

81 

23 

27 

16 

81 

5R 

27 

0C 

81 

42 

0330 

26 

67 

C6 

20 

08 

5fl 

26 

FC 

20 

06 

C6 

4R 

03 

5R 

26 

FC 

0340 

08 

R6 

00 

91 

41 

26 

25 

DF 

3fl 

DF 

3C: 

CE 

00 

41 

DF 

3E 

0350 

DE 

3C 

R6 

00 

03 

DF 

3C 

DE 

3E 

E6 

00 

08 

DF 

3E 

11 

26 

0360 

09 

9C 

36 

26 

EB 

DE 

3R 

C6 

01 

39 

DE 

3fl 

08 

R6 

00 

31 

0370 

00 

26 

F9 

60 

01 

26 

RD 

C6 

00 

39 

C:E 

00 

40 

BD 

EG 

CC 

0380 

BD 

El 

RC 

16 

R7 

00 

08 

30 

SB 

DF 

36 

39 

30 

EC 

CE 

05 

0390 

00 

B0 

03 

00 

SD 

8E 

5D 

26 

03 

7E 

00 

RD 

09 

R6 

00 

81 

03R0 

00 

26 

F9 

BD 

01 

9F 

6D 

01 

27 

EF 

SC 

13 

10 

26 

E5 

20 

03B0 

E8 

B0 

03 

7R 

CE 

05 

00 

BD 

03 

24 

5D 

26 

02 

20 

DR 

09 

03C0 

R6 

00 

81 

00 

26 

F9 

BD 

03 

00 

CE 

04 

DD 

BD 

E0 

7E 

DE 

0300 

38 

BD 

01 

9F 

BD 

El 

RC 

81 

59 

27 

0B 

6D 

01 

27 

Bfi 

SC 

03E0 

13 

10 

26 

D3 

20 

B3 

09 

R6 

00 

81 

00 

26 

F9 

36 

5B 

R7 

03F0 

01 

BD. 

01 

DE 

C6 

50 

08 

6F 

00 

5R 

26 

FR 

20 

9B 

01 

01 

0400 

00 

0R 

00 

00 

00 

04 

00 

0R 

00 

00 

00 

4D 

45 

4D 

4F 

52 

0410 

59 

20 

46 

55 

4C 

4C 

04 

00 

0fl 

00 

00 

00 

4E 

41 

4D 

45 

0420 

20 

23 

32 

30 

20 

43 

48 

41 

52 

41 

43 

54 

45 

52 

53 

29 

0430 

04 

0D 

0fl 

00 

00 

00 

54 

45 

4C 

45 

50 

48 

4F 

4E 

45 

20 

0440 

23 

31 

31 

20 

44 

49 

47 

49 

54 

20 

40 

41 

53 

29 

04 

00 

0450 

0fl 

00 

00 

00 

42 

49 

52 

54 

48 

20 

44 

41 

54 

45 

20 

28 

0460 

59 

59 

40 

4D 

44 

44 

29 

04 

00 

0R 

00 

00 

00 

53 

54 

52 

0470 

45 

45 

54 

20 

23 

32 

31 

20 

43 

43 

41 

52 

41 

43 

54 

45 

0480 

52 

53 

29 

04 

00 

0R 

00 

00 

00 

43 

49 

54 

59 

3B 

53 

54 

0490 

41 

54 

45 

20 

23 

31 

37 

20 

43 

48 

41 

52 

41 

43 

54 

45 

04R0 

52 

53 

29 

04 

00 

0R 

00 

00 

00 

5R 

49 

50 

20 

43 

4F 

44 

04BG 

45 

20 

28 

35 

20 

44 

49 

47 

49 

54 

53 

29 

04 

46 

55 

4E 

04C0 

43 

54 

49 

4F 

4E 

20 

28 

4E 

2C 

42 

2C 

5R 

2C- 

4C 

20 

46 

0400 

2C 

45 

2C 

41 

2C. 

53 

2C 

44 

29 

20 

3F 

20 

04 

00 

0R 

00 

04E0 

00 

00 

44 

45 

4C 

45 

54 

45 

20 

54 

48 

49 

53 

20 

45 

4E 

04F0 

54 

52 

59 

20 

28 

59 

2F 

4E 

29 

3F 

00 

0R 

00 

00 

00 

04 


0400 MEMOR 

0410 V FULL NRME 

0420 <20 CHRRRCTERS > 

0430 TELEPHONE 

0440 <11 DIGIT MRX> 
0450 BIRTH ORTE < 
0460 WMMDD> STR 

0470 EET <21 CHRRRCTE 
0430 RS> Cl TV; ST 

0490 RTE <17 CHRRRCTE 
04R0 RS> ZIP COD 

04B0 E <5 DIGITS} FUN 
04C0 CTION <N.B,Z,L.F 
0400 ,E,R,S,D> ? 

04E0 DELETE THIS EN 
04F0 TRV <V/N>? 



A NEW DIMENSION 
IN APPLE ADVENTURES 



Adventure will never be the same! At 
last, three dimensional graphic adven- 
tures are available. The user moves 
through three dimensional mazes de- 
picted via the APPLE’S hi-res graphics. 

At every turn, danger lurks. Objects 
must be found, monsters slain, and 
incredible problems solved. 

Deathmaze 5000 places you on the top 
floor of a five story building. Each floor 
is a maze of twisting passageways. 

Floors are connected by elevators and 
open pits. You have but one goal. 
ESCAPE ALIVE! Where is the only door 
out of this nightmare? Monsters, bats, 
mad dogs, hunger, and many more 
horrors will plague your every step as 
you struggle to escape the most com- 
plex adventure ever written. 

Labyrinth places you in a maze of gi- 
gantic proportions. But you are not 
alone! A minotaur searches for you, 
seeking a grisly meal. You must find 
weapons, spells, and treasures. You 
must deal with ghosts and cave gnomes. 
You must avoid the minotaur until the 
moment is right for the final battle. 

SATISFACTION GUARANTEED! 

All Med Systems Software products 
come with a two week, money back 
guarantee. If you are not completely 
satisfied, return your order within two 
weeks for a prompt and cheerful 
refund. 

REWARD! 

Deathmaze 5000 is perhaps the tough- 
est adventure ever devised. Few may 
survive its corridors of death. Six of 
those who do will win a Deathmaze 
shirt and their choice of three pro- 
grams. For details, see our ad in the 
October '80 Microcomputing or send 
in the coupon below. 

Each program $12.95, for 32K APPLE II 
or APPLE II PLUS, 16K TRS-80 Level II. 


Please send the following 3-D adventures: 

□ Deathmaze ($12.95) $ 

□ Labyrinth ($12.95)$ 

TOTAL $ 

□ Please send your catalog of programs and products, 
as well as details of the Deathmaze contest. 

Name 

Address 

City State Zip 

Computer: 

□ TRS-80 16K Lll □ APPLE II or APPLE II 

PLUS 32K 

□ Mastercard QVISA □ check 

MC or VISA # 

Expiration Date 

MED SYSTEMS SOFTWARE 

P.O. Box 2674 Chapel Hill, N.C. 27514 
(919)933-1990 ^ 129 

k J 


i/ 0 Reader Service index— page 241 


Microcomputing, October 1980 47 



*v* €*4?' 


r <*V >>>^° 0 < 



'*Y St'A 


VV 0 A 0 ' ^ 
c&£&* . ^ 


* Competitive prices 
* Minimum orders of 500 
* 9 day RUSH delivery available 
* Conscientious, reliable service 
★ Quantity discounts 
* Factory direct 



Checks 
To-Go 


8384 Hercules St., La Mesa, CA 92041, (714) 460-4975 



TR5 60 > — \ 


TOCOftMJ1I fTlDDEL 3 

TRS-80 Model I call tadayl 



689 


Model II 


Level II 16K. 26-1056 


*3450 



We accept check, money order or phone 
orders with Visa or Master Charge. 
(Shipping costs added to charge orders). 

Computers Unlimited 

1524 OAK HARBOR ROAD. FREMONT. OHIO 43420 


64K, 1-Disk TRS-80 
Model II System 


VISA CHARGE IT 

Wmm 


U9-33E-Lfl81 
Collect 


v* 26 


MX-8 RELAY MODULES 
FOR LOW COST 
INSTRUMENTATION AND 
AUTOMATIC TEST 



• 8 BIT MICROPROCESSER I/O PORT CONTROL. 

• MATRIX MODE - LATCHES ONLY ONE RELAY. 

• MULTIPLEXER MODE - LATCHES ONLY ONE 
RELAY. 

• CLEAR MODE - OPENS ALL RELAYS. 

EXPANSION UP TO 8 MODULES 
WITH 

• PREWIRED CARD CAGE. 

• 8 BIT I/O INTERFACE MODULE. 

• IEEE 488 BUS INTERFACE MODULE. 

Catalogs and detailed applications bulletins from 


/4TEC s 


^237 


YSTEMS 

Box 128. Mendon, N.Y. 14506 716-924-3822 


INCREASE 
YOUR PROFITS.... 

with a magazine that makes 
the family computer come alive. 


•Sofftw*«BreiCfc»» 
for APPLE II. 
TRSSO. ATARI 
•Software 
|I Rwvtews ; - : i||!ll 
•Practical Software 



articles 

Published quarterly 
Retails $4.00, 1 yr. subscription $12.00 

Dealer Discounts Available* Contact 

CHRIS LATTER 0ilK 

P.O.BOX 466 V-1AS 

EL DORAOO.CA. 95623 


THE LOWEST 

prices on this high-quality software Buy direct and save 50V 
Now also available for CBASIC on CP/M and MBASIC on 
HEATH HDOS 

OATA BASE MANAGER Mod-1 $69 Mod II $199 

You can use it to maintain a data base & produce reports 
without any user programming Define file parameters & report 
formats on-lme Key random access, fast multi-key sort, field 
arith. label audit log No time-consuming overlays 500 happy 
users in a year. Mod-ll version with over 50 enhancements 

A/R Mod I $69 Mod-ll SI 49 

Invoices, statements aging, sales analysis, credit checking 
form input, order entry As opposed to most other A/R. ours 
can be used by doctors, store managers etc 

WORO PROCESSOR Mod I $49 Mod II $49 

Center, justification, page numbering Used for letters, 
manuals and reports Mod-1 version features upper/lower 
case without hardware change' 

MAILING LIST Mod I $59 Mod II $99 

The best' Compare and be selective Form input. 5-digit 
selection code, zip code ext sort any field, multiple labels 
Who else otters a report writer 9 

INVENTORY Mod I $99 Mod II $149 

Fast, key random access Reports include order info 
performance summary. E.O.Q.. and user-specified reports 
Many converted their inventory to ours' 

PAYROLL. A/R. A/P. and GL available for the Mod-ll DOS and 
CP/M 

L216. a cassette package of 10 business programs for Level II 
16K systems. $59 

MICRO ARCHITECT. INC.. ■" 108 

96 Dothan St.. Arlington. MA 02174 


48 Microcomputing, October 1980 




Try to beat our prices! 


SUPERBRAIN by Intertec 



Self-contained computer with duat disks and 
two RS232C ports. Complete with CP/M' 2.2 
and BASIC. 

32K Double Density, List $2995 . vZOoO 


64 K Double Density, List $3345 $2883 

64K MiniMicroMart-upgraded 
to Quad Density SPECIAL $3395 


NORTH STAR HORIZON® 

(Call for North Star Specials ) 


HORIZON 1 KITS 

16K, Double Density, List $1749 .... $1474 

32K, Double Density, List $1999 $1684 

32K, Quad Density, List $2199 $1869 

HORIZON 1 ASSEMBLED & TESTED 

32K, Double Density, List $2695 .... $2279 

32K, Quad Density, List $2995 $2539 

HORIZON 2 kits 

16K, Double Density, List $2149 $1824 

32K, Double Density, List 2399 $2034 

32K, Quad Density, List 2779 $2359 

HORIZON 2 ASSEMBLED & TESTED 

32K, Double Density, List $3095 $2619 

32K, Quad Density, List $3595 $3049 

48K, Double Density, List $3590 $3039 

48K, Quad Density, List $4090 $3469 

64K, Double Density, List $3830 $3239 

64K, Quad Density, List $4330 $3669 


VIDEO TERMINALS 


NEW EMULATOR (Intertec), List $895$ 729 

INTERTUBE II, List $995 ONLY $ 799 

SOROC 120, List $995 SPECIAL $ 729 

1Q140, List $1495 SPECIAL $1149 

PERKIN-ELMER 550, List $997 $ 799 

with anti glare screen, $1027 $ 829 

HAZELTINE 1410, List $900 $ 749 

1420 $ 849 

1500, List $1225 $ 879 

1510, List $1395 $1089 

1520, List $1650 $1389 

ADDS R-20, List $995 $ 945 

LEAR SIEGLER ADM3A, Assembled . . $ 849 

TELEVIDEO 912C, List $950 $ 789 

920C, List $1030 $ 849 


PRINTERS 


ANADEX DP-8000 $ 849 

DP-9500, List $1650 $1399 


INTEGRAL DATA IP-125 w/1210 $ 724 

IP-225 w/ 1210 8- 1250 op., List $988 . . . $ 834 
IP-225 w/tractor, 1210, 1250, 1221 
(2K Buffer), 1241 (graphics) . . . NOW $ 899 
PAPER TIGER IDS-440, List $995 . . . . $ 895 
w/graphics op., incl. buffer, $1195 ... $ 989 

NEC Spinwriters Call for Price 

TELETYPE 43 KSR $1087 

CENTRONICS 

730-1 parallel interface .... NEW LOW $679 
737 parallel interface . . SUPER VALUE $849 
779 w/Tractor, List $1350 $1049 

702 w/Tractor, VFU, List $2480 $1995 

703 w/Tractor, VFU, List $2975 $2395 

704 w/Tractor, VFU, List $2350 $1995 

Tl 810 Basic, List $1895 $1695 

810/serial & Centronics-style 

parallel interface, List $1940 $1735 

810 w/full ASCII (U/LC), Vertical 
Forms Control, Compressed Print . . $1895 

Tl 820 KSR, List $2165 $1895 

Tl 745 w/full ASCII, List $1695 $1399 

COMPRINT 912 w/parallel interface . . $ 559 

912w/serial interface. List $699 $ 589 

AXIOM IMP I $ 699 

MICROTEK, List $750 $ 675 

OKIDATA Microline 80, List $949 649 

Tractor Feed Option $ 99 

RS232 Serial Interface $ 89 


FLOPPY DISK SYSTEMS 

NORTH STAR MDS-A 

Assembled, List $899 SPECIAL $ 719 


Kit Version, List $799 $ 669 

MORROW THINKER TOYS* Discus 2D, 

List $1199 OUR PRICE $1019* 

Discus 2D, dual-drive, List $1994 $1694* 

Discus 2 + 2, A&T, List $1549 $1319* 

Dual Discus 2 + 2, A8T, List $2748 . . . $2335* 
*Now includes CP/M 0 2.2 
MICROMATION Megabox, DD w/ 

8" drives, 1 -megabyte. List $2295 $1949 

2-megabyte, List $3095 $2629 

MICROPOLIS 1041 MacroFloppy* 

w /Enclosure (no P.S.), List $695 $ 625 

1042 MacroFloppy w/case & AC P.S. . $ 709 
1053 Dual Meta Floppy" , List $1895 . . . $1695 


VIDEO BOARDS 

I/O Mapped 

SD COMPUTER VDB-8024,kit,List $370 $319t 

Assembled, List $470 $ 399 1 

XITEX SCT-100K, Kit ONLY $154.95 

SCT-100A Assembled $174.95 

SSM VB2 I/O, Kit, List $169 $ 144 

Assembled & Tested, List $234 $ 199 

Memory Mapped 

SSM VB1C, 16x64, Kit, List $179 $145 

Assembled a Tested, List $242 $196 

SSM VB3, 80-Char. ,4MHz, Kit, List $399 $ 339 

4 MHz, A&T, List $464 $ 394 

INTERSYSTEMS, 16x64, A&T, List $165 $149 


ESCON CONVERSION 
FOR IBM SELECTRIC 

Complete w/microprocessor controller and 
power supply. Factory built. User installs 
solenoid assembly or it can be done at Escon 
factory at nominal cost. 

Parallel (TRS-80, Sorcerer, etc.), $575 $514 


RS232 Standard Serial, List $599 534 

IEEE-488 (for PET), List $660 584 

TRS-80 Cable 25 


CPU BOARDS 

(assembled unless noted) 

NORTH STAR 280A IZPB-A/A), $299 $254 
CROMEMCO 4 MHz (ZPU-W), List $395 $335 


4 MHz (SCC-W), List $450 $382 

INTERSYSTEMS (formerly Ithaca Audio) 
new Series II Z-80, 4 MHz, List $395 . . . $349 

SSM CB1 8080 A&T, List $219 $186 

CB1A Kit, List $159 $135 

CB2 Z-80, A&T, List $27u $234 

CB2 Kit, List $210 $179 

DELTA Z-80, with I/O $289 

SD SBC 100, List $350 $2981 

SBC 100 Kit, List $295 $250t 

SBC 200, List $400 $332 1 

SBC 200 Kit, List $320 $272 1 


MEMORY BOARDS 

32K SD ExpandoRAM Kit 
ONLY $ 249 * 

ONLY $159 without RAM chips 

t Get $25 rebate from SD Computer 
when you buy any of their products 
prior to October 31, 1980. 

NORTH STAR 16K Dynamic RAM Board, 


A&T (RAM-16-A/A), List $499 $420 

16K Kit Version, List $449 . . SPECIAL $299 

32 K A&T (RAM-32/A), List $739 $620 

32 K Kit, List $669 SPECIAL $499 

CROMEMCO 16KZ-W, List $495 $419 

64KZ-W, List $1795 1485 

MEASUREMENT SYSTEMS & CONTROLS 
(Guaranteed performance, incl. labor/parts 1 yr) 
DM6400 64K Board w/all 64K, $795 . . . $659 

DM4800 with 48K, List $695 $589 

DM3200 with 32K, List $595 $509 

DMB6400 64K Board w/all 64K $859 

DMB4800 with 48K $789 

MORROW SuperRAM - all static, all A&T 

16K, 4 MHz or 2 MHz, List $349 $299 

32K, 4 MHz, List $699 $629 

16K Memory Master, List $399 $339 

24K Memory Master, List $549 $465 

INTERSYSTEMS (formerly Ithaca Audio) 

8K Static 2 MHz, A&T, List $165 $149 

8K Static 4 MHz, A&T, List $195 $176 

16K Static 2 MHz, A&T, List $475 $427 

16K Static 4 MHz, A&T, List $495 $445 

64K Dynamic, List $995 $895 

CALIFORNIA COMPUTER 
16K Static, A&T, List $349.95 $259 


FLOPPY DISK 
CONTROLLER BOARDS 

NORTH STAR, DD, Kit, List $399 $329 

Assembled, List $499 $399 

MORROW Disk Jockey 1, A&T ($213) . $189 

Disk Jockey 2D, A&T, List $479 $429 

SD Versafloppy 1, Kit, List $250 $212 t 

Versaf loppy II, DD Kit, List $350 $297 t 

Versafloppy II, DD, A&T, List $430 .... $365 t 

DELTA double density A&T ($385) $345 

CONDUCTOR, double density A&T . . . $269 
INTERSYSTEMS FDC-2, A&T, $495 . . . $439 
MICROMATION Doubler, DD, A&T . . . $399 
TARBELL Floppy Disk Interface Kit ... . $199 
double density, A&T, List $495 $444 


SHIPPING AND INSURANCE: Add $2.50 for boards, $6 for Selectric Converter or Floppy Disk Drives, $7.50 for Floppy Disk Systems, $15 for Horizon. SHIPPED FREIGHT COLLECT. SuperBrain, Centronics 
and T.l. printers. Contact us for shipping information on other terminals and printers. 

Above prices reflect a 2% cash discount (order prepaid prior to shipment). Add 2% to prices for credit card orders, C.O.D.'s, etc. Prices are subject to change and offers subject to withdrawal without notice 

- WRITE FOR FREE CATALOG - 


MiniMicroMart, Inc. .. 

1618 James Street, Syracuse NY 13203 (315)422-4467 TWX 710-541-0431 


Upgrading the Heath H8 
With a Z-80 Microprocessor 


Now that Heath has boarded the Z-80 bandwagon, keep in step with the HZ8 adapter. 


Patrick Swayne 
290 Springdale 
Sebastopol, CA 95472 

W hen the Heath Company decided to 
get into the hobby computer 
business, the 8080 was the most popular 
micro, and thus the most logical choice for 
their CPU. But the Z-80 has since eclipsed it 
in popularity, and now Heath has joined the 


parade by introducing their own Z-80-based 
machine, the H89. This computer uses the 
same disk and cassette operating systems 
as the H8. Currently, the only software 
available for it is 8080 software, but sooner 
or later software will appear that takes ad- 
vantage of the Z-80’s expanded instruction 
set. Over 15,000 H8 owners may be left 
behind as a result. 


Photo 1 shows my solution to this prob- 
lem. It is a Z-80 adapter that mounts piggy- 
back onto the H8 CPU board. It plugs into 
the sockets normally occupied by the 8080 
CPU, the 8238 (or 74S438) system controller 
and the 8224 clock driver. No modifications 
are required on the CPU board itself, and at 
any time you can remove the adapter and 
replace the original ICs. It can be built for 
about $30 to $40, including the Z-80 (which 
has dropped to less than $15 at some mail- 
order houses). 

How the Adapter Works 

The schematic of the adapter is shown in 
Fig. 1. In this circuit, the original CPU and 
system controller are replaced by a Z-80, six 
commonly available TTL chips, a capacitor 
and some resistors. (Two of the TTLs and 
the capacitor may be eliminated if the op- 
tional section is not built.) The clock driver 
is also shown because some connections 
were made to it. (A socket for the clock 
driver was included in the actual assembly 
to make these connections possible, even 
though it is still electrically on the CPU 
board.) 

This circuit effectively emulates all of the 
signals normally produced by the 8080 and 
8238 that are used by the H8. This is easy to 
accomplish because Heath chose to use 
the fully decoded 8238 system controller 
signals, rather than the undecoded status 
or control signals (except Ml) that are 
multiplexed onto the data bus of the 8080. 

You can produce those signals by simply 
ANDing together the appropriate Z-80 out- 
puts. For example, the MEMR (memory 



Photo 1. H8 CPU board with the adapter plugged in. The Z-80 (D780C) and some TTL ICs re- 
piace-the original 8080 and 8238. / placed two extra ICs for the optional section, which I de- 
signed after I took this photo, in the lower-left corner of the perf board. The Textool socket 
to the left of the adapter is for testing homemade ROM monitors. 


50 Microcomputing, October 1980 



read) signal is produced by ANDing the 
MREQ (memory request) and RD (read) 
outputs. The NOR gates on the schematic 
are used as negative AND gates in this ap- 
plication (except those used as inverters). 

Noninverting OR gates (such as the 
74LS32) could have been used, eliminating 
the need for inverters at the outputs of the 
NORs, but the chip count would not have 
been reduced, since the circuit requires at 
least five ORs and seven inverters. I chose 
to use 74LS02s because they are more 
readily available. Pull-up resistors are re- 
quired at each of the four memory and I/O 
control outputs of the Z-80, because they 
are Tri-state and might, at some time, be 
undefined. 

Deriving the 8238-type memory and I/O 
control signals was easy, but some of the 
others are not so obvious. The INTA (inter- 
rupt acknowledge) signal is derived by AND- 
ing the IORQ (I/O request) and Ml (first 
machine cycle) outputs. The H8 uses an Ml 
signal and decodes it by ANDing the 8080’s 
PD 5 and SYNC outputs. Since the Z-80 
already has an MT output, I simply ran it 
(through an inverter) to the SYNC input of 
the 8224 and tied PD 5 (actually, D 5 on the 
8238) high through a resistor. 

The WATT input on the Z-80 is the same as 
the READY input on the 8080, except that it 


does not have to be timed, so I connected 
the raw RDYIN input at the 8224 to the Z-80 
WAIT input. The Z-80 InT, BUSRQ and 
BUSAK signals are just inverted counter- 
parts of the 8080 INT, HOLD and HLDApins, 
so I connected them together through in- 
verters. The NMI (non-maskable interrupt) 
on the Z-80 is not used, so I tied it high. 
(Later on, I may write a monitor that uses 
that interrupt to return to monitor control 
from a user program, which would make 
possible debugging a program that had in- 
terrupts disabled.) 

The HALT and RFSH outputs of the Z-80 
are not needed, and were left unconnected. 
The address pins on the Z-80 were con- 
nected to the corresponding pins on the 
8080 socket, and the data pins go to the DB 
pins on the 8238 socket. 

The Z-80 does not produce a counterpart 
to the 8080 INTE (interrupt enable flip-flop) 
output. The H8 uses that signal to light an 
LED on the front panel and to operate the 
single instruction (SI) button. INTE is pro- 
duced by the optional section of the circuit, 
and non-machine-language hackers who 
never use the SI button may leave that sec- 
tion out and tie pin 16 on the 8080 socket 
high instead. If you do that, the SI button 
will do nothing, and the ION light will 
always be on. 


The INTE output of the 8080 is set or reset 
according to whether interrupts are en- 
abled or disabled. Interrupts may be en- 
abled and disabled by software, using the 
El and Dl instructions, and are always dis- 
abled when the processor receives an inter- 
rupt. The HZ8 adapter circuitry responds 
only to El and Dl, but that is sufficient to 
achieve normal operation of the H8. It does 
this by examining the data bus at Ml time, 
when op codes are fetched. 

The El instruction in binary is 11111011, 
and Dl is 11110011. Bit 3, the only one that 
changes, goes to the data input of a D-type 
flip-flop, while the others, along with Ml, 
are used to clock the data through when 
they are all present. Capacitor C ^ slows the 
clocking down just enough to ensure that 
D 3 has settled down before it is sampled. 

Single Stepping 

Before I designed the INTE circuitry on 
the adapter, I looked into various software 
single-step schemes, which I considered 
using, and found that they are all deficient 
in some way. Most cannot handle certain in- 
structions, and all require considerably 
more code than the Heath method. The H8 
can single-step through all of the 8080’s in- 
structions, and, with my adapter, through 
all of the Z-80’s codes in only a few bytes of 



Fig. 1. Z-80 adapter circuit Connect the points marked “X”; don’t tie INTE (pin 16) on the 8080 socket high if optional section isn’t built. 

Microcomputing, October 1980 51 



, 'V 


Photo 2. Side view of adapter board shows the frameless socket framed socket (left) for alignment. If pins remain at full length, 

pins attached to the ends of the wire-wrap pins, using an ordinary the CPU card won’t fit in the first motherboard position. 


code. 

When you press the SI on the H8 front 
panel, the monitor jumps to a routine that 
first disables interrupts, bringing the INTE 
output low. Then data is written to a port 
which causes the output of a flip-flop to go 
high. This signal goes to a NAND gate, the 
output of which will produce a level 2 inter- 
rupt when its other input goes high. That in- 
put is controlled by two flip-flops whose 
data is the INTE signal, with Ml used as the 
clock. It takes two Mis to clock the current 
value of INTE to the NAND gate. 

After writing to the port mentioned 
above, the software restores all user 
registers and flags (previously saved when 
entering the monitor mode). It then enables 
interrupts, bringing INTE high, and jumps to 
the user program. That jump sends out one 
Ml pulse, and the first user instruction 
sends out another, allowing the INTE signal 
to generate an interrupt. The processor 
allows the current instruction to finish, and 
then control is returned to the monitor. In 
this way, one user program instruction is 
executed each time you press the SI button. 

The single phase system clock required 
by the Z-80 is a special case. It could be sup- 
plied by the 02 (TTL) output of the 8224, ex- 
cept that it requires a greater voltage swing 
than TTL. The signal must go from a low of 
no more than 0.8 volts to a high of no less 
than 4.4 volts (with a 5 volt supply). I solved 
this problem by running the clock through 
two gates of a 7405 open collector inverter, 
with pull-up resistors on the outputs. 

To ensure a fast rise-time to the higher- 
than-normal voltage, a 330-ohm resistor 

52 Microcomputing, October 1980 


pulls up the input to the Z-80. Another gate 
of the 7405 is used to invert the 8224 RESET 
to supply the Z-80’s inverted version of the 
signal, and the rest are used in the optional 
section. 

Construction 

Using the wire-wrap technique, I built the 


adapter on a 3 x 4 inch piece of standard 
perfboard with 0.1 inch spaced holes. I 
placed 40-pin, 28-pin and 16-pin wire-wrap 
sockets on the boards so that their pins are 
directly over the holes in the 8080, 8238 and 
8224 sockets in the CPU board. The Heath- 
supplied X-ray view of the PC board can be 
used to align the sockets. Another 40-pin 


ICs 


Qty. 

Type 

Function 

2 

74LS02 

Quad 2-Input NOR 

1 

74LS04 

Hex Inverter 

1 

74LS30 

8-Input NAND* 

1 

74LS74 

Dual D-type Flip-Flop* 

1 

7405 

Hex Open Collector Inverter 

1 

Z80 

Microprocessor 

‘Optional 


Sockets 


Qty. 

Pins 

Augat Part No. 

6(4) 

14 WW 

514-AG10F 

2 

16 WW 

516-AG10F 

1 

28 WW 

528-AG10F 

2 

40 WW 

540-AG10F 

1 

16 F 

716-AG4D 

1 

28 F 

728-AG4D 

1 

40 F 

740-AG4D 


WW = Wire Wrap F = Frameless 

16-, 28-, and 40-pin standard or wire-wrap sockets are also temporarily required to 
mount frameless socket pins. 

Miscellaneous 

1 Dale No. LDP16-02-102G resistor pack or equivalent 
or 

12 Ik ohm resistors and 1 330 ohm resistor 

3x4 inch perfboard 

Wire 

Table 1. HZ8 parts list. I built the prototype using 16-pin sockets for 14-pin ICs due tc 
availability (or lack thereof). 



wire-wrap socket, which holds the Z-80, was 
installed between the other 40-pin and 
28-pin sockets. Placement of the other 
sockets is not important, but wire lengths 
should be kept short. 

Power and ground for the TTL were de- 
rived from the VCC and ground pins of the 
8238 socket, except for the 7405, which gets 
its ground and power from the 8224 socket. 
The two extra chips for the optional section 
were added later, and get their power from 
the Z-80 socket. For the pull-up resistors, I 
used a resistor package containing 15 resis- 
tors, all Ik ohm, connected internally to a 
common pin. To make the 330 ohm resistor, 
three resistors in the package were paral- 
leled. Discrete resistors may also be used. 

After being wired, the circuit should be 
checked with an ohmmeter or continuity 
tester for correctness, because when it is 
finished it will be difficult to make changes. 
To make it possible to plug the adapter into 
the CPU board, frameless socket pins were 
soldered to the ends of the wire-wrap pins 
on the 8080, 8238 and 8224 sockets. Frame- 
less sockets are socket pins that are in- 
stalled on an aluminum frame that is re- 
moved after the sockets are soldered into a 
PC board. 

To connect these pins to a wire-wrap 
socket, they should first be removed from 
the frame and plugged into an ordinary 
framed socket. That will hold them in place 
while they are soldered to the wire-wrap 
pins. 

Photo 2 shows how the pins are connect- 
ed. If the wire-wrap pins are left their full 
length, the CPU card with the adapter in- 
stalled will not fit in the first motherboard 
position. If the wire-wrapping is kept close 
to the board, and all pins are cut so that 
they protrude no more than 1/4 inch from 
the perfboard (before the frameless pins are 
attached), then the board will just fit in the 
first slot. 

Those H8ers capable of making their own 
PC boards and using that technique would 
not have a thickness problem. The frame- 
less socket pins could be soldered directly 
to the back of the PC board over the pro- 
truding pins of the sockets. 

Installation and Checkout 

The adapter cannot be plugged into the 
CPU board unless the 8080, 8238 and 8224 
sockets on the board are all of the flat, low- 
profile type. If any are not, they will have to 
be changed. The 8080 and 8238 ICs should 
be stored in anti-static material (foil will do) 
while they are not in use. 

After the TTL ICs, resistor pack and 8224 
are installed, the adapter can be plugged in- 
to the CPU board. If the CPU is to be used in 
the second motherboard slot, framed 
sockets can be plugged onto the socket 
pins to protect them before the adapter 
board is plugged in. Then the Z-80 can be in- 


stalled, and the CPU board replaced in the 
computer. 

Checkout is simply a matter of turning 
the computer on. If PAM-8 (the front-panel 
monitor) signs on normally by lighting the 
displays and beeping the horn, everything 
else should also run normally. If there is 
trouble, the first area to check is the wiring 
and then the chips. 

The Z-80 

The 8080 instruction set consists of 244 
individual op codes. Like most 8-bit pro- 
cessors, each op code consists of one byte, 
making 256 the total number of codes 
possible. The Z-80, however, uses four of 
the 12 op codes not used by the 8080 as the 
first byte of several two-byte op codes. You 
can think of these as 16-bit op codes that 
are fetched one byte at a time. In that sense, 
the Z-80 is a predecessor of the Intel 8088, a 
16-bit micro designed to use an 8-bit data 
bus. 

The two-byte op codes are used for a 
variety of purposes, including 16-bit 
arithmetic, bit manipulation, working with 
two index registers and some versatile 
block move and search instructions. These 
last types are an elementary form of 
microcode, another way in which the Z-80 
looks forward to the big machines. 

Two of the Z-80’s 16-bit instructions 
adversely affect the operation of the op- 
tional section of the adapter circuit during 
normal running (but not during single step- 
ping). The second bytes of these instruc- 
tions, SET 6,E and SET 7,E, have the same 
binary code as Dl and El. Since the Z-80 
issues an Ml pulse for each byte of two- 


byte op codes, the adapter circuitry sees 
the second bytes of those SET instructions 
as Dl and El. The result is that the front 
panel ION light may be lying if those in- 
structions are in the code. Upon return to 
monitor, however, an El instruction is en- 
countered, and proper indication is 
restored. 

The Z-80 uses five of the other eight un- 
used 8080 op codes for an unconditional 
and four conditional relative jumps. In the 
8080, all jumps require three bytes - one for 
the op code and two for the address. With 
the Z-80 relative jumps, a single byte follow- 
ing the op code specifies the jump destina- 
tion as a signed 8-bit offset added to the 
program counter. 

Another of the unused 8080 codes is a 
special relative jump instruction that 
decrements the B register each time it is ex- 
ecuted and jumps if B is greater than zero. 
The remaining two extra op codes are used 
to switch between alternate sets of the six 
general-purpose registers and alternate 
flag registers and accumulators. In all, the 
Z-80 has about 700 op codes in its instruc- 
tion set. 

A Final Note 

Those who use Heath’s cassette assem- 
bler, HASL-8 version 4.01.01 or 4.02.00, will 
have to make a patch before it will work on a 
Z-80. The program contains one of the 
8080’s unused op codes, 40 (octal), which is 
one of the Z-80’s relative jumps. To correct 
this bug in version 4.01.01, change the con- 
tents of address 055.265 (split octal) to 000. 
To correct version 4.02.00, change 055.365 
to 000. ■ 


Microcomputing, October 1980 53 


The Age of Affordable Pers 



single board at a cost of under $300. The Superboard II received rave 
reviews by microcomputer experts such as: 

"We can heartily recommend the Superboard II computer system for 
the beginner who wants to get into microcomputers with a minimum of 
cost. Moreover, this is a 'real' computer with full expandability." 

POPULAR ELECTRONICS MARCH, 1979 

"The Superboard II weighs in at $279 and provides a remarkable 
amount of computing for this incredible price" 

KILOBAUD MICROCOMPUTING FEBRUARY, 1979 

"The Superboard II and its fully dressed companion the Challenger IP 
series incorporate all the fundamental necessities of a personal com- 
puter at a very attractive price. With the expansion capabilities 
provided, this series becomes a very formidable competitor in the home 
computer area" INTERFACE AGE APRIL, 1979 

"The graphics available permit some really dramatic effects and are 
relatively simple to program . . .The fact that the system can be easily 
expanded to include a floppy means that while you are starting out with 
a low-cost minimal system, you don't have to throw it away when you 
are ready to go on to more complex computer functions. At $279, 
Superboard II is a tough act to follow" RADIO ELECTRONICS JUNE, 1979 

"The Superboard is an excellent choice for the personal computer 
enthusiast on a budget'.' BYTE MAY, 1979 


Since the introduction of Super- 
board II, the cost of personal com- 
puters has actually gone up with 
new models by major manufacturers 
ranging from $1000 to well over 
$4000 due to the general cost of 
inflation and the increasing func- 
tionality included in these com- 
puters. Today Cleveland Consumer 
Computers is offering you the orig- 
inal Superboard II at its original 
price of just $279. In today's 
economy this is by far the best buy 


in personal computing ever! 

The Superboard II can entertain 
your whole family with spectacular 
video games and cartoons, made 
possible by its ultra high resolution 
graphics and super fast BASIC. It 
can help you with your personal 
finances and budget planning, 
made possible by its decimal 
arithmetic ability and cassette data 
storage capabilities. It can assist you 
in school or industry as an ultra 


powerful scientific calculator, made 
possible by its advanced scientific 
math functions and built-in 
"immediate" mode which allows 
complex problem solving without 
programming! This computer can 
actually entertain your children 
while it educates them in topics 
ranging from naming the Presidents 
of the United States to tutoring 
trigonometry — all possible by its 
fast extended BASIC, graphics and 
data storage ability. 

The machine can be economically 
expanded to assist in your business, 
remotely control your home, com- 
municate with other computers 
and perform many other tasks via 
the broadest line of expansion 
accessories in the microcomputer 
industry. 

This machine is super easy to use 
because it communicates naturally 
in BASIC, an English-like program- 
ming language. So you can easily 
instruct it or program it to do 
whatever you want, but you don't 
have to. You don't because it comes 
with a complete software library on 
cassette including programs for 
each application stated above. Ohio 
Scientific also offers you hundreds 
of inexpensive programs on ready- 
to-run cassettes. Program it yourself 
or just enjoy it; the choice is yours. 

The Superboard II comes fully 
assembled and tested. It requires 
+ 5V at 3 Amps and a video monitor 
or TV with RF converter to be up 
and running. $279.00 


Standard Features: 


• Uses the ultra powerful 6502 
Microprocessor. 

• 8K Microsoft BASIC-in-ROM. 
Full feature BASIC runs faster 
than currently available personal 
computers and all 8080 based 
business computers. 

• 4K static RAM on board expand- 
able to 8K. 

• Full 53-key keyboard with 
upper/lower case and user 
programmability. 

• Kansas City standard audio 
cassette interface for high 
reliability. 

• Full machine code monitor and 
I/O utilities in ROM. 


54 Microcomputing, October 1980 


final Computing is Still Here. 



Direct access video display has IK 
of dedicated memory (besides 4K 
user memory), features upper 
case, lower case, graphics and 
gaming characters for an effective 
screen resolution of up to 256 x 
256 points. Normal TVs with 
overscan display about 24 rows of 
24 characters without overscan up 
to 30 x 30 characters. 


Optional Extras: 

• Available 610 expander board 
features up to 24K static RAM 
(additional), dual mini-floppy 
interface, and an OSI 48 line 
expansion interface. 

• Assembler/Editor and Extended 
Machine Code monitor available. 

• 630 I/O Expander. 

RGB color and NTSC composite 
color outputs with up to 16 colors, 
Dual 8-axis joystick interface, AC 
remote control interface which 
mates with AC-12P, home security 
interface which mates with the 
AC-17P, 16-line parallel I/O inter- 
face, 16-pin I/O bus interface 
which allows the connection of 
parallel I/O lines or high speed 
analog I/O module, or a PROM 
blaster or solderless interface pro- 
totyping board, programmable 
sound generator and program 
selectable modem and high speed 
printer ports, and more. 


Freight Policies All orders of $100 or more 
are shipped freight prepaid. Orders of less 
than $100 please add $4.00 to cover shipping 
costs. Ohio Residents add 5.5% Sales Tax. 

Guaranteed Shipment Cleveland 
Consumer Computers & Components 
guarantees shipment of computer systems 
within 48 hours upon receipt of your order. 

Our failure to ship within 48 hours entitles 
you to $35 of software, FREE. 

Hours: 

Call Monday thru Friday 
8:00 AM to 5:00 PME.D.T. 



Software: 

Ohio Scientific and independent suppliers 
offer hundreds of programs for the 
Superboard II, in cassette and mini -floppy 
form. Here is a sampling of popular Ohio 
Scientific programs for the Superboard II. 


CS-600 


EDUCATIONAL PROGRAMS 

SBII&CIP 

Price 

BASIC Tutor Series 

SCE-336 

$35.00 

Clock Tutor 

SCE-353 

6.50 

Continents Quiz 

SCE-332 

6.50 

Definite Integral 

SCE-326 

6.50 

French Drill & Tutor 

SCE-339 

6.50 

German Tutor & Drill 

SCE-342 

6.50 

Hangman (8K) 

SCE-324 

9.00 

Log Tutors 1-3 

SCE-344 

6.50 

Math Blitz 

SCE-329 

6.50 

Math Intro 

SCE-319 

6.50 

Mathink 

SCE-337 

9.00 

Matrix Tutors 1-3 

SCE-345 

6.50 

Metric Tutor & Quiz 

SCE 335 

6.50 

Spanish Drill & Tutor 

SCE-352 

6.50 

Spelling Quiz 

SCE-333 

6.50 

Trig Tutor (8K) I & II 

SCE-318 

6.50 

BUSINESS PROGRAMS 

Address Book 

SCB-523 

9.00 

Advertisement Demo 

SCB-520 

6.50 

Inventory Demo 

SCB-518 

6.50 

Mailing List (8K) 

SCB-524 

6.50 

Straight & Constant Depreciation 

SCB-500 

9.00 

Time Calculator 

SCB-525 

9.00 

PERSONAL PROGRAMS 

Biorhythm 

SCP-716 

9.00 

Calorie Counter 

SCP-708 

6.50 

Checking Account 

SCP-719 

9.00 

Loan Finance 

SCP-717 

6.50 

Personal Calendar 

SCP-718 

6.50 

Savings Account 

SCP-720 

9.00 

GAME PROGRAMS 

Baseball I 

SCG-975 

6.50 

Black Jack 

SCG-955 

6.50 

Civil War 

SCG-977 

6.50 

Destroyer 

SCG-951 

6.50 

High Noon 

SCG-960 

6.50 

Hockey 

SCG-979 

6.50 

Lander 

SCG-925 

6.50 

New York Taxi 

SCG-956 

6.50 

Poker 

SCG-962 

6.50 

Racer 

SCG-949 

6.50 

Space War 

SCG-942 

6.50 

Star Trek 

SCG-946 

6.50 

Star Wars 

SCG-926 

6.50 

Tic-Tac-Toe 

SCG-945 

6.50 

Tiger Tank 

SCG-950 

14.00 

"\ir t-.^fTTri 

w m ■ m 

610 Board 


Z m *-0 

»o ^ m O i 

To Order 


Or to get our free 



Hardware: 


Superboard II 

as specified in the advertisement . $279 

610 Board For use with Superboard II and 
Challenger IP, 8K static RAM ex- 
pandable to 24K or 32K system total. 
Accepts up to two mini-floppy disk 
drives. Requires + 5 V@ 4.5 amps. 298 
Mini-Floppy Disk Drive 

Includes Ohio Scientific's PICO 
DOS software and connector cable. 
Compatible with 610 expander 
board. Requires + 12V@ 1.5 amps 



and +5V@ 0.7 amps. 

299 

630 Board As specified in the advertisement . 

229 

AC-3P 

12" combination black and white 
TV/video monitor. 

159 

4KP 

4K RAM chip set. 

79 

PS-005 

5V 4.5 amp power supply for 
Superboard II. 

35 

PS-003 

Mini -floppy power supply. 

29 

C1P Sams 

ClP/Superboard II Manual. 

8 

OS-65D 

V3.2 Disk Operating System with 
9-digit extended BASIC, random 
access and sequential files. 

49 

CS-600 

Metal case for Superboard II, 610 
and 630 board and two power 
supplies. 

49 

CS-610 

Metal case for single floppy disk 
drive and power supply. 

49 

AC-12P 

Wireless AC remote control system. 
Includes control console, two lamp 
modules and two appliance 



modules for use with 630 board. 

175 

AC-17P 

Home security system. Includes 
console, fire detector, window 



protection devices and door unit for 
use with 630 board. 

249 

C4P Sams C4P Manual . 

16 

C3 Sams 

Challenger III Manual. 

40 



Charge your order to your VISA or MASTER CHARGE ACCOUNT 
Ohio Residents Call: (216) 464-8047. Or write, including your check 
or money order, to the address listed below. 

ft CLEVELAND CONSUMER 28 
Gi|j COMPUTERS & COMPONENTS 

P.O. Box 46627 
Cleveland, Ohio 44146 


Order Form: 


CLEVELAND CONSUMER P.O. Box 46627 

COMPUTERS & COMPONENTS Cleveland, Ohio 44146 

□ Superboard II $279. □ 630 Board $229. 

□ 610 Board $298. □ AC-3P 12" B-W Monitor $159. 

□ Mini-Floppy Disk Drive $299. OOP Sams Manual $8. 

(Attach separate sheet for other items.) 

NAME: 

ADDRESS : 

CITY: 


STATE: 


_ZIP:_ 


Payment by: VISA: _ MASTER CHARGE: _ MONEY ORDER: 

Credit Card Account jf 

Expires: Interbank § (Master Charge) 


TOTAL CHARGED OR ENCLOSED: $ (Ohio Residents add 5.5% Sales Tax) 

All orders shipped insured UPS unless otherwise requested. FOB Cleveland, Ohio. 


Reader Service index— page 241 


Microcomputing , October 1980 55 




Robert M. Richardson 
Drawer 1065 

Chautauqua Lake, NY 14722 


Level II ROM 

Subroutine Test 


Talk to your TRS-80 in its own language. 


Function 

Number Type 

Decimal 

Hexadecimal 

ABS 

2-4-8 

2423 

0977 

ATN 

4-8 

5565 

15BD 

BASIC 

(Return L-ll) 

6681 

1A19 

BASIC 

(Return disk) 

112 

0075 

BREAK 

(RST address) 

16396 

400C 

CDBL 

2-4 

2779 

0ADB 

CINT 

4-8 

2687 

0A7F 

CLS 

2-4-8 

457 

01 C9 

COS 

4-8 

5441 

1541 

CSNG 

2-8 

2737 

0AB1 

EXP 

4-8 

5177 

1439 

FIX 

2-4 

2854 

0B26 

INT 

2 

2871 

0B37 

INVERT SIGN 

2 

3153 

0C51 

INVERT SIGN 

4-8 

2434 

0982 

LOG 

4-8 

2057 

0809 

MEMORY 

(Size input) 

181 

00 B 5 

RANDOM 

2-4-8 

467 

01 D3 

RETURN 

(T o subroutine) 

32000 

7D00 

RND <1.0 

4-8 

5321 

14C9 

SGN 

2 

2442 

098A 

SIN 

4-8 

5447 

1547 

SQR 

4-8 

5095 

13E7 

TAN 

4-8 

5544 

15A8 


Table 1. Level II arithmetic/trigonometric conversion table. Number types: 2 = inte- 
ger; 4 = single precision; 8 = double precision. 


Listing 1. Source code. 


00100 

W4UCH 

EQU 

7D00H 

00110 


ORG 

W4UCH 

00120 


LD 

A , 4EH 

00130 


CALL 

0 3 2 AH 

00140 


CALL 

1BB3H 

00150 


RST 

1 OH 

00160 


CALL 

0E6CH 

00170 

RETURN 

EX 

AF, AF 


; 7D00H = 32000 DECIMAL 
; PROGRAM WILL START HERE 
;4EH="N"=NUMBER DESIRED ? 
; DISPLAY "N" ON VIDEO 
; KYBD/VIDEO INPUT ROUTINE 
; SCAN STRING - SET C FLAG 
; ASC I I “ACCUM RET MINIMUM 
; EXCHANGE REGISTERS - 


H ere is another interesting test program 
for the advanced assembly-language 
programmer. It lets you access and test 
many of the arithmetic/trigonometric sub- 
routines in the TRS-80 Level II ROM written 
by Microsoft’s Bill Gates and Paul Allen. 

The beginning assembly-language pro- 
grammer should certainly learn how to 
write fundamental arithmetic/trig functions 
by himself, but once these techniques have 
been mastered as part of the learning pro- 
cess, it is inefficient and unnecessary to du- 
plicate in assembly language those subrou- 
tines already in the Level II ROM. 

Table 1 lists those functions and their ad- 
dresses that may be accessed and tested 
by this mini-program that only occupies 144 
bytes of high memory and may be entered 
using the TRS-80 Editor/Assembler in about 
five minutes. 

Listing 1 is a printout of the test 
program’s source code, and Listing 2 shows 
the program’s object code. As you will see, 
the majority of this program is written using 
Level II ROM subroutines. Were these sub- 
routines not used in this particular assem- 
bly-language test program, it would require 
ten times as much program memory and oc- 
cupy 550 rather than 55 assembly-language 
program lines. 

Program Flow 

The comments included with the source 
code program are largely self-explanatory 


56 Microcomputing, October 1980 


and delineate each line’s function. This pro- 
gram operates equally well with non-disk 
Level II, DOS 2.1, DOS 2.2 and NEWDOS + . 
Program operation is as follows: 

1. Load the program under the SYSTEM 
or DOS command. Give it any name you 
wish. We like the program name DISCOV, 
for discovery, since that is what the pro- 
gram is all about. After loading is complete, 
type in /32000 to activate the program (with 
disk you must first load BASIC, then type 
SYSTEM, ENTER, and then type in /32000 
ENTER, if you load the program in DOS). 

2. The letter ‘N?’ will appear on the video. 
The program is asking you for a number to 
work on. Enter any number up to 16 digits, 
depending on the function you wish to test. 
Let us start out with a simple example by 
entering the number 100000. 

3. The numbers ‘2’ ‘100000’ will appear on 
the next line of the video display. The ‘2’ is 
the number type brilliantly calculated by the 
Level II ROM. Since we are dealing only with 
numbers in this article, we will skip over 
strings et al for the time being. The number 
types are as follows: 2 = integer, 4 = single 
precision and 8 = double precision. Table 1 
lists those operations that can be per- 
formed on a number for a given number 
type; e.g., it is against the rules to take the 
square root SQR of an integer. We must 
first change it. 

4. On the following line of the video dis- 
play you will see ‘C?’. The program is asking 
you what type of conversion you wish. Let’s 
enter 2737, which is the address of the 
CSNG function, to change our number from 
an integer to single precision, then ENTER. 
The next line will show ‘4’ ‘1000’. We now 
have a single-precision number to work 
with, so let’s try taking its square root by 
typing in 5095, the address of the SQR rou- 
tine, then ENTER. The next line shows ‘100’. 
This sure is easier than writing a complete 
stand-alone assembly-language square 
root subroutine. Let’s try it again. Type in 
5095 ENTER. Again, the line below displays 
the square root, this time, the numeral 10. 

5. To insert a new number to try your pro- 
gram on, merely type in 32000 ENTER. This 
brings us back to where we started by dis- 
playing ‘N?’. Thus, 32000 is our subroutine. 
Our assembly-language program does not 
discriminate between ROM or RAM; it could 
care less. 

6. We could go on and on converting num- 
bers such as deriving the natural LOG of 
any number and then restoring it to its 
original value via the EXP function, and/or 
deriving the TANgent of a number, then its 
arc tangent ATN and then the TANgent 
again ... ad infinitum. You may escape this 
conversion routine any time you wish by 
typing 6681 ENTER, which will take you 
back to BASIC with a READY displayed. To 
return to your conversion routine, type SYS- 


00180 

EXX 


00190 

LD 

DE ,411 DH 

00200 

LD 

HL, STORE 

00210 

LD 

B,8 

00220 

CALL 

09D7H 

00230 

LD 

DE,4127H 

00240 

LD 

HL f CDBL 

00250 

LD 

3, 8 

00260 

CALL 

09D7H 

00270 

LD 

A, (40AFH) 

00280 

LD 

(FLAG) ,A 

00290 

ADD 

A, 48 

00300 

CALL 

0 32AH 

00310 

LD 

A,20H 

00320 

CALL 

0 3 2 AH 

00330 

CALL 

0FBDH 

00340 

CALL 

2 3A7H 

00350 

LD 

A , 0 DII 

00360 

CALL 

032H 

00370 

LD 

A, 43H 

00380 

CALL 

32AH 

00390 

CALL 

1BB3H 

00400 

RST 

1 OH 

00410 

CALL 

0E6CH 

00420 

CALL 

0A7FH 

00430 

LD 

(CONV) , HL 

00440 

LD 

DE ,CDBL 

00450 

LD 

HL, 4 1 27H 

00460 

LD 

B , 8 

00470 

CALL 

09D7H 

00480 

LD 

DE , STORE 

00490 

LD 

HL , 4 1 1 DII 

00500 

LD 

B , 8 

00510 

CALL 

09D7H 

00520 

LD 

A, (FLAG) 

00530 

LD 

(40AFH) , A 

00540 

LD 

IIL, RETURN 

00550 

PUSH 

HL 

00560 

LD 

HL, (CONV) 

00570 

PUSH 

HL 

00580 

EX 

AF , AF 1 

00590 

EXX 


00600 

RET 


00610 FLAG 

DEFS 

1 

00620 CONV 

DEFS 

2 

00630 CDBL 

DEFS 

8 

00640 STORE 

DEFS 

8 

00650 

END 

W4UCH 


TO PRESERVE VALUES. 

MOVE MEM ACCUM DATA FROM 
TO TEMPORARY STASH. 
NUMBER OF BYTES TO MOVE 
MOVE IT - SUBROUTINE 
MOVE CDBL DATA FROM- 
TO TEMPORARY STASH. 
NUMBER OF BYTES TO MOVE 
MOVE IT - SUBROUTINE 
NUMBER TYPE MEM LOCATION 
MOVE TO TEMPORARY STASH 
CONVERT TO ASCII NUMBER 
DISPLAY NUMBER TYPE 
2 OH = ASCII SPACE 
DISPLAY SPACE ON VIDEO 
CONV MEM ACCUM TO ASCII $ 
DISPLAY CONVERTED NUMBER 
0DH=SKIP A LINE/CARR RTN 
DO IT - ON VIDEO DISPLAY 
M C M = CONVERSION NUMBER? 
DISPLAY "C" ON VIDEO 
KYBD/VIDEO INPUT ROUTINE 
SCAN STRING - SET C FLAG 
ASCI I-ACCUM RET MINIMUM 
CONVERT TO INTEGER 
STORE CONVERSION ADDRESS 
MOVE CDBL DATA FM STASH- 
TO PERMANENT ADDRESS. 
NUMBER OF 3YTES TO MOVE 
MOVE IT - SUBROUTINE 
MOVE MEM ACCUM FM STASII- 
TO PERMANENT ADDRESS. 
NUMBER OF BYTES TO MOVE 
MOVE IT - SUBROUTINE 
NUMBER TYPE FROM STASH- 
TO PERMANENT ADDRESS. 
RETURN MEM LOCATION- 
LOADED INTO STACK. 
CONVERSION MEM LOCATION- 
LOAD ON TOP OF STACK. 
RESTORE REGISTER5- 
TO ORIGINAL VALUES. 
SNEAKY CALL- TOP OF STACK 
NUMBER TYPE STASH 
CONVERSION ADDRESS STASH 
CDBL DATA STASH 
ACCUMULATOR STASH 
AMATEUR RADIO CALL LTRS 


Listing 2. Object code. 


7D00 


00100 W4UCII 

EOU 

7D00H 

7D00 


00110 

ORG 

W4UCH 

7D00 

3E4E 

00120 

LD 

A , 4EII 

7D02 

CD2A03 

00130 

CALL 

0 32 AH 

7D05 

CDB31B 

00140 

CALL 

1BB3II 

7D08 

D7 

00150 

RST 

1 OH 

7D09 

CD6C0E 

00160 

CALL 

0E6CII 

7D0C 

08 

00170 RETURN 

EX 

AF , AF* 

7D0D 

D9 

00180 

EXX 


7D0E 

111D41 

00190 

LD 

DE , 4 1 1 DII 

7D11 

21837D 

00200 

LD 

HL, STORE 

7D14 

0608 

00210 

LD 

B , 8 

7D16 

CDD709 

00220 

CALL 

09D7H 

7D19 

112741 

00230 

LD 

DE , 4 1 27H 

7D1C 

217B7D 

00240 

LD 

IIL, CDBL 

7D1F 

0608 

00250 

LD 

B , 8 

7D21 

CDD709 

00260 

CALL 

09D7H 

7D24 

3AAF40 

00270 

LD 

A, (40AFH) 

7D27 

32787D 

00280 

LD 

(FLAG) , A 

7D2A 

C630 

00290 

ADD 

A, 48 

7D2C 

CD2A03 

00300 

CALL 

032AH 

7D2F 

3E20 

00310 

LD 

A, 20H 

7D31 

CD2A03 

00320 

CALL 

032AH 

7D34 

CDBD0F 

00330 

CALL 

0FBDH 

7D37 

CDA728 

00340 

CALL 

2 8A7H 

7D3A 

3E0D 

00350 

LD 

A, 0DH 

7D3C 

CD3200 

00360 

CALL 

032H 

7D3F 

3E4 3 

00370 

LD 

A , 4 3H 

7D41 

CD2A03 

00380 

CALL 

3 2 AH 

7D44 

CDB31B 

00390 

CALL 

1BB3H 

7D47 

D7 

00400 

RST 

1 OH 

7D48 

CD6C0E 

00410 

CALL 

0E6CH 


Microcomputing, October 1980 57 


7D4B 

CD7F0A 

00420 

CALL 

0A7FH 

7D4E 

22797D 

00430 

LD 

(CONV) ,HL 

7D5 1 

117B7D 

00440 

LD 

DE,CDBL 

7D54 

212741 

00450 

LD 

IIL, 4127H 

7D57 

0608 

00460 

LD 

B , 8 

7D59 

CDD709 

00470 

CALL 

09D7II 

7D5C 

1 1837D 

00480 

LD 

DE, STORE 

7D5F 

211D41 

00490 

LD 

IiL , 4 1 1 DH 

7D62 

0608 

00500 

LD 

B,8 

7D64 

CDD709 

00510 

CALL 

09D7H 

7D67 

3A787D 

00320 

LD 

A, (FLAG) 

7D6A 

32AF40 

00530 

LD 

(40AFH) ,A 

7D6D 

210C7D 

00540 

LD 

HL , RETURN 

7D70 

E5 

00550 

PUSH 

HL 

7D71 

2A797D 

00560 

LD 

HL, (CONV) 

7D74 

E5 

00570 

PUSH 

HL 

7D75 

08 

00580 

EX 

AF , AF 1 

7D76 

D9 

00590 

EXX 


7D77 

C9 

00600 

RET 


0001 


00610 FLAG 

DEFS 

1 

0002 


00620 CONV 

DEFS 

2 

0008 


00630 CDBL 

DEFS 

8 

0008 


00640 STORE 

DEFS 

8 

7D00 


00650 

END 

W4UCH 

00000 

TOTAL 

ERRORS 




TEM, then ENTER and type /32000, then 
ENTER. 

Conclusion 

This article covers only a few of the sub- 
routines in Level II BASIC ROM. Assembly- 
language programming is the ne plus ultra 
of serious computing. Your assembly-lan- 
guage program runs 300 times faster than 
the same program in BASIC and uses only 
1/10th as much memory. 

Learning to talk to your computer in its 
own language rather than through an inter- 
preter (BASIC, FORTRAN or Pascal) is a 
most satisfying and rewarding experience if 
you have the patience and fortitude to 
master it. ■ 


The material in this article comes from The Disassembled 
Handbook for TRS-80, which is available from the author 
for $10 postpaid. 


16K MEMORY 
EXPANSION KIT 
FOR YOUR TRS-80, 
APPLE, AND S-100 
COMPUTER 


only $59 


• 200 Nsec Access, 375 
Nsec Cycle 

• Burned-in and Fully 
Tested 

• 1 yr. Parts Replacement 
Guarantee 

• Qty. Discounts Available 



1230 w.couinj owe. 1X159 


ORfiflGE, CA 92668 


(714)633 7280 


— Professional — 


Real Estate Software 

For Apple or TRS-80 


Property Management System 

(32K, 1 Disk Systems) 

Features: 


• Tenant Information 

• Late Rent Reports 

• YTD ft Monthly Income 

• Handles — 

Partial Payments 
Returned Checks 
Advance Payments 

• Prints Receipts 


• 5 Digit Expense Accounts 

• Building Expense Report 

• Vendor Expense Report 

• Income Tax Report 

• All Reports Can Be Printed 

• Complete Documentation 

• Easy Data Entry ft Edit 

• 200 Units per File 


Price $225.00 


Real Estate Analysis Modules: 

(Cassette or Disk) 


1) Home Purchase Analysis 

2) Tax Deferred Exchange 

3) Construction Cost/Profit 

4) Income Property Cashflow 

5) APR Loan Analysis 

6) Property Sales Analysis 

7) Loan Amortization 


|^$35 Per Module 

I U At Computer Stores Ever 

I I ^ Or Order COD Dlrec 

II [oftware 

^ealtyj|ompany 


At Computer Stores Everywhere 
Or Order COD Direct 
(Cal Residents Add 6% Seles Tax) 

TM 


Dept. K 2045 Manhattan Ave. . Hermosa Beach. CA 90254 


TIS-APL 

* Stand alone APL for Z80 includes OS& DOS. 

* User work space exceeds 27K with some 
systems over 32K bytes. 

* Use of system commands, file and system 
functions. 

* 3D arrays inner and outer products. 

* Catenate, scan, compress, reduce and 
rotate along specified axis. 

* Custom versions fpr many popular Z80 
based computers. 

* Systems functions for: 

Communicating with other processors in- 
cluding large mainframe computers. 

Full ASC II and APL interface with wide variety 
of peripherals. 

Internal switching between APL and ASC II. 

Calls to User written assembler routines. 

TELECOMPUTE INTEGRATED SYSTEMS INC. 

251 SPADINA AVENUE, TORONTO ^118 
ONTARIO, CANADA M5T 2E2 
PHONE: 416-363-9295 



At last! CREATE A COMPLETE DIGITAL DATA 
BASE in minutes for any stock or commodity. 
Months or even years of charted data can be 
traced from a graphics tablet using the INVEST- 
MENT DATA SYSTEM. After files are created to 
your specifications, they can be easily updated 
and displayed at any time. 

The data bases may be created on a daily, week- 
ly or monthly basis and analyzed in your own 
programs or other commercially available soft- 
ware. 

The INVESTMENT DATA SYSTEM is written for 
the APPLE II computer. At least one disk drive, 
Applesoft in ROM, a minimum of 32K RAM and a 
Talos 1 or Apple 1 graphics tablet are required. 

Data System & Manual $120* 

Manual Alone $ 20* 

Further Information No Charge 

URBAN AGGREGATES INC. 

6431 Brass Knob ^325 

Columbia, Maryland 21044 

1 Specify which 

2 Maryland Residents, add 5 % Sales Tax 


SS-50 

• CALENDAR - CLOCK 

• INTERRUPT GENERATOR 

• BATTERY BACK-UP 

• PARALLEL I/O PORT 

• SAMPLE FORMAT: SAT JUL 26 1980 10:30:24 PM 

CLK 68-1 - The cryetal controlled 30 pin I/O board provide* a 
real tiae calendar/clock. The batteriea are recharged when the 
computer ie on & will keep the clock running 3 months or more 
without power. (No off-board component* needed.) Time/dete i* 
read (12 or 24 hour format) and set using the software provided 
in the 36 page manual. Include* (ample BASIC program to read 
time, patch for TSC assembler to print time/date at top of each 
page, and interrupt examples. Generates interrupts at intervals 
from 488 microsec. to 2S6 see. Professional board is solder 
masked, silk screened, & fully socketed. NO jumpers (uses DIP 
•witches). Includes fully buffered parallel I/O port for 
printer, keyboard, etc. Options include: Software on Smoke 
Signal Disk (3" or 8") $14.93, Cold Bus connector* $7. SO, 2 MHs 
parts $2.30, and Nanual only (refundable with purchase of CLK). 
Available for IMMKDIATK DCLITKRT. 

CLK 68-1 Manual only $10.00 KIT $89.95 AST $119.95 


PILES. $ - Program lists SSB directory alphabetically in from 1 
to 6 columns (long or short form) - supports wild cards. Also 
includes transients to convert hexadecimal to decimal and 
decimal to hex. Specify 5" or 8" SSB disk. $14.95 
NOW 

NINE TRACK TAPE CONTROLLER Avai lable «***wr Provide backup for 
data storage or exchange with large mainframe systems. $59S.OO 


AUTHORIZED SMOKE SIGNAL BROADCASTING DEALER 

ROBERTSON ELECTRONICS add $ 2.50 per order for 
1003 warm sands dr. se shipping and handling 
ALBUQUERQUE/ NM 87123 ✓102 pH. (505) 294-0025 



c-io SHORT so ft. 
CASSETTES 


Qty. Price 


10 $0.75 
50 $0.65 

Premium tape and cassettes acclaimed 
by thousands of repeat order microcom- 
puter users. Price includes labels, cas- 
sette box and shipping in LJ.S.A. VISA 
and M/C orders accepted. California 
residents add sales tax. Phone (415) 
968-1604. ^123 


MICROSETTE CO. 

475 Ellis Street 
Mt. View, CA 94043 



58 Microcomputing, October 1980 






FOR Mil SBIENTIFIO COMPUTERS 


TRULY PROFESSIONAL 
WORD PROCESSING 
—EVEN ON VERY 
SMALL SYSTEMS! 

At last, a word processing program 
that offers really impressive capabili- 
ties to small-system users. 

The program's name is WP6502. 
Available on tape, 5" or 8" disk, 
WP6502 runs on all Ohio Scientific 
computers, with or without serial video 
terminal. 

WP6502 is fast and responsive. It 
features instant line editing with two- 
way scrolling. It allows powerful global 
editing— search and replace at your 
discretion. You can do fancy page 
layouts, tab anywhere, change mar- 
gins, and change line spacing, any 
place you wish. The command codes 
are so simple and logical you'll learn 
them within minutes. 

WP6502 even includes advanced 
features such as Block Text (up to 99 
blocks retrievable by number, in any 
sequence) and On-Line Entry (stop 
the printout whenever you like, to add 
personalized text from the computer 
keyboard). 

DMS INTERFACE, TOO! 

This truly professional program can 
be used with all your DMS files, new 
and old. All you need is our optional 


DMS interface. 

AND A MODEST PRICE 

Thetape, 5” disk, or8” 65-D version is 
only $75. The 8” disk with both 65-D 
and 65-U versions is $125. The DMS 
interface"(for 65-U only) is $50. Order 
by check or COD (New York residents 
add sales tax). 

Or send forourfree brochure listing 
additional options such as propor- 
tional spacing, justification, Network 
and Timeshare versions, and more! 


A BETTER WAY TO 
MANAGE DISK FILES 

Now you can do what Ohio 
Scientific's disk-operating system 
never let you do before. Create a file 
on disk and save your data in that 
file in one instant operation! No 
need to clear the workspace. No 
need to switch disks. 

DQ SECRETARY is the program 
which makes it possible. 

Too much data for an existing 
file? DQ SECRETARY automatically 
extends the file for you. No room to 
extend it? DQ SECRETARY finds 
another space on the disk and puts 
the file there for you. Still no room? 
DQ SECRETARY even repacks the 
disk for you. Automatically! You 
never need to specify a track 
number. 

DQ SECRETARY replaces Ohio 


Scientific’s CREATE, DELETE, RE- 
NAME, and DIR utilities and PUT 
and LOAD routines with one fast 
program that borrows only 2K of 
your workspace. 

On 5" or 8" disk, DQ 
SECRETARY is $50, by check or 
COD. New York residents add sales 
tax. 


SINGLE-DRIVE DISK 
COPYING MADE EASY 


Is it too much of a hassle to make 
backup copies of valuable disks, 
when you only have one disk drive? 

Not any more. DQ DUPLICATOR 
lets you copy a disk in as few as two 
disk changes (depending on how 
much RAM your system has). 

No need to call individual tracks 
and sectors. DQ DUPLICATOR works 
automatically and shows you a 
record of each track it reads and 
writes. 

On 5" disk DQ DUPLICATOR is 
$30, check or COD. New York 
residents add sales tax. 


Our programs are not just ingenious. 
They're inscrutable. 

Dwo Quong is 87 
Fok Lok Sow 

23 East 20th Street 
New York, NY 10003 

(212) 673 6310 



i/ 0 Reader Service index— page 241 


Microcomputing, October 1980 59 









Expansions and Programming 


Now that your computer is built, you’ll want to expand it 
for more memory and I/O capability. . . and then on to programming. 


Peter A. Stark 

PO Box 209 

Mt. Kisco, NY 10549 


I ’ve described how to build tfte basic 
Kilobaud Klassroom Komputer. This time 
I’ll show some ways in which the computer 
can be expanded and begin my discussion 


of computer programming. 

Though we did not originally intend our 
computer to be anything but a small control 
computer, a number of readers have asked 
for expansion information so they could 
make It into a more general-purpose sys- 
tem. 

With some of the expansions described 
below, it is possible to run some programs 
that people associate only with larger sys- 


tems. (For example, a machine-language 
monitor for entering, executing and debug- 
ging machine-language programs, as well 
as a Tiny BASIC, are available from Star- 
Kits, PO Box 209, Mt. Kisco NY 10549.) 

Installing a Second PIA 

The printed circuit board layout I pre- 
sented last time has one socket that is fully 
wired for a PIA parallel interface chip, and a 
second socket that can be used either for a 
second 6820 (or 6821) PIA or for a 6850 ACIA 
for serial communications. 

This socket is located in the top right cor- 
ner of the PC board (see Photo 1). Since the 
PIA and ACIA connections are slightly dif- 
ferent, only some of the pins of this socket 
position are already connected (the data 
bus and clock connections for the two ICs 
are in the same relative positions). The oth- 
er connections, however (those that are dif- 
ferent for the two ICs), must be wired by 
hand for the 1C you plan to use. 

Installing a PIA is easy. Just wire the fol- 
lowing pins: 

• Pin 24, CS1, connects to + 5 volts. Pin 24 
connects to a small round pad right next to 
it; just next to that is another round pad, 
which is at +5 volts. Connect a short jump- 
er between them. 

• Pin 34, RESET, connects to pin 34 of the 
other PIA. Small round pads are located 
next to pin 34 of both PIAs to make the con- 
nection easier. 

• Pin 35, RSI, connects to pin 35 of the 
other PIA. Round pads located next to pin 
35 of both PIAs are used. 

In addition, both PIAs have small pads 
next to pins 2 through 19 and pins 39 and 40; 



Photo 1. This unit has been expanded with both the RS-232C serial port as well as an addi- 
tional IK of RAM. 


60 Microcomputing, October 1980 





♦ 5V 



♦5V 



Fig. 1. RS-232C/TTL level conversion. 


these pins are the data I/O ports that con- 
nect to the outside world. (I will give much 
more information regarding the PIA in a fu- 
ture installment.) 

Installing an ACIA 

Installing an ACIA takes a little more 
work, but is still useful. To take advantage 
of the nine pins prewired for either a PIA or 
an ACIA, the ACIA socket must be installed 
so pin 1 of the ACIA goes in the hole that 
would otherwise be used for pin 6 of the 
PIA. When installed in this way, the data 
bus and clock connections fit perfectly into 
the connections already established for the 
PIA. 

The remaining ACIA pins must be con- 
nected by hand as follows: 

Pin 1 to ground. 

Pins 2 and 6 are the serial data input and 
output, respectively. Both of these are TTL- 
compatible, whereas most serial I/O de- 
vices will use either current loop or EIA RS- 
232C connections. This means that we 
must build an interface circuit that will con- 
vert between the TTL voltage levels used by 
the ACIA and either the voltage levels of an 
RS-232C connection or the current levels of 
a current loop connection. This interface 
circuitry, which I discussed in Kilobaud 
Klassroom No. 13 (October 1978, p. 46), can 
be built in the wire-wrap area of the board. 

Fig. 1 shows the level conversion circuits 
needed to interface to an RS-232C terminal. 
The top circuit converts the TTL output of 
the ACIA to RS-232C levels of between -3 
and - 15 volts for a 1, and between +3 and 
+ 15 volts for a 0. It uses an inexpensive 741 
op amp to provide the required inversion 
and to provide positive and negative output 
voltages. (Although a negative voltage sup- 
ply is obviously needed to provide a 
negative output, the current is negligible 
and so a 9-volt transistor radio battery will 
provide enough current for even extensive 
testing and experimenting.) 

The bottom circuit is used in the opposite 


direction. Negative voltages from the RS- 
232C port turn off the transistor and provide 
a high level to the ACIA for a 1, while posi- 
tive input voltages turn on the transistor 
and provide an output near 0 volts for a 0. 
Any inexpensive npn silicon transistor can 
be used in this circuit. 

Pins 3 and 4 require a clock pulse at a fre- 
quency that is a multiple of the baud rate. 
The clock frequency can be either the same 
as the baud rate, 16 times the baud rate or 
64 times the baud rate, depending on how 
the ACIA is programmed. But most design- 
ers, wishing to stay compatible with UARTs 
that require a frequency of 16 times the 
baud rate, use the same multiple with the 
ACIA. For example, for transmission at 300 
baud, a frequency of 4800 pulses per sec- 
ond would be required. 

Fig. 2 shows two common ways of gener- 
ating this clock frequency. Fig. 2a uses a 
555 timer 1C as an oscillator to provide a fre- 
quency equal to 16 times the desired baud 
rate. Since the circuit frequency is set by an 
RC network, careful adjustment of potenti- 
ometer R2 is required, and even then the fre- 
quency may drift with time. But this circuit 
is still popular because it is inexpensive 
(though a frequency counter is needed for 
adjustment). 

Several baud rate generator ICs that gen- 
erate the same frequencies by using a crys- 
tal oscillator as a reference are available. 
One popular device is the Motorola 
MC14411. As shown in Fig. 2b, this circuit 
uses a 1.8432 MHz crystal, which connects 
directly to an on-chip oscillator to provide 
the crystal-controlled reference. Inside the 
14411 is a series of counters that divides 
the crystal frequency to provide a number 
of simultaneous baud rate output signals. 
For example, the 300 baud rate output on 
pin 7 comes from a counter that divides the 
1.8432 MHz crystal frequency by 384 to pro- 
duce exactly 4800 pulses per second; this is 
equal to 16 times 300. 

This circuit will provide almost any baud 
rate we might need (including some not 
shown in Fig. 2b), but it has the disadvan- 
tage of requiring a $10 1C, as well as a $5 
crystal. If we don’t need 110 baud, then the 
circuit of Fig. 3 saves the price of the crystal 
by using the computer’s own clock as the 
crystal reference. (But this circuit will only 
work if the 6802 is using a 3.579 MHz color 
TV crystal for the clock.) 

When a 3.579 MHz crystal is used as the 
6802 clock, this frequency is divided by the 
6802 to provide an Enable signal of 3.579/4 
MHz, or .89475 MHz. This is just a little less 
than half of 1.8432 MHz (about three per- 
cent less, to be exact). If we send this signal 
to pin 21 of the 14411 instead of the 1.8432 
MHz signal that would normally be there 
from the crystal, the 14411 will generate 
outputs just slightly less than half the nor- 


mal ones. For example, pin 7 will provide an 
output of just under 1 50 baud, instead of the 
normal 300 baud. So if we need 300 baud, 
we simply move over to pin 5, which now 
provides just under 300 baud instead of its 
customary 600 baud. Although these baud 
rate signals are about three percent low, 
this is still within the normal tolerance of 
serial terminals. 

ACIA pins 8, 10 and 12 should be jump- 
ered to + 5 volts. The most convenient loca- 
tion is the hole that would otherwise go to 
pin 22 of a PIA. 

Pin 9, CS2, should be connected to pin 
11 of the 74LS138 address decoder at the 
small round pad next to it. 

ACIA pin 11, RS, connects to address bit 
A0 at the hole that would normally connect 
to pin 36 of a PIA in that 1C position. 

Pin 13, R/W, should be connected to 
the hole that would otherwise go to pin 21 of 
a PIA. 

Finally, pins 23 and 24 should be ground- 
ed to pin 1 of the PIA socket. (If, however, a 
serial port with handshaking is needed, 




BAUD RATE R! R2 C 

NO 5.6K 5K O.I*F 

300 22K 25K O.OifiF 

1200 5.6K 5K O.OI*F 


555 

TIMER 


T 


16 x BAUD RATE CLOCK 


a) 555 TIMER CIRCUIT 


♦5V 



HO 

BAUD 

300 

BAUD 

600 

BAUD 

1200 

BAUD 

2400 

BAUD 

4800 

BAUD 

9600 

BAUD 


b) MCI 44 II BAUD RATE GENERATOR 


16 x BAUD RATE 
> CLOCK - 
CHOOSE ONE 


Fig. 2. Two circuits for generating a 16x 
baud rate clock for an ACIA. 



150 BAUD 
300 BAUD 
600 BAUD 
1200 BAUD 
2400 BAUD 
4800 BAUD 


16 x 

BAUD RATE 
CLOCK - 
CHOOSE ONE 


Fig. 3. Alternate 16x baud rate clock genera- 
tor. 


Microcomputing, October 1980 61 


-12V 

741-4 


5V 

*PI A2-22 ACIA-10 ACIA-12 ACIA-8 

MC14411 -22 MC14411-24 R4-1 R6-1 

MC1441 1-10 

741 + 

741-3 R4-2 R5-1 


741- 

741-2 R3-2 


7410UT 

741-6 R8-1 


8 V 

741-7 


A0 

*PIA2-36 ACIA-11 


ACI ASEL 7 

*74LS138-11 ACIA-9 


BAUDCLOCK 

ACIA-3 ACIA-4 MC14411-3 


EIA-IN 

EIA-PIN-2 R7-2 


EIA-OUT 

EIA-PIN-3 R8-2 


ENABLE 

♦PIA2-25 MC1441 1-21 


GROUND 

♦PIA2-1 ACIA-1 ACIA-23 ACIA-24 

MC14411-12 MCI 44 1 1 -23 Ql-E R5-2 

CR2-2 El A-PIN-7 

G1BASE 

CR2-1 Ql-B R7-1 


R/W 7 

♦PIA2-21 ACIA-13 


RXDATA 

ACIA-2 Ql-C R6-2 


TXDATA 

ACIA-6 R3-1 


Table 1. Wiring 

list for adding an ACIA, baud rate generator and serial RS-232C port. 


then pin 24, CTS, is used for that purpose. 
When pin 24 is low, the ACIA will output; 
when it is high, the ACIA will stop output- 
ting and will wait.) 

Table 1 is a wiring list that shows all the 
connections needed to install a complete 
serial port using the circuitry of Figs. 1 and 
3. The connection points marked with a star 
are existing points in the computer to which 
you can connect to get the desired signal. 
For example, address bit AO is listed as 

AO * PIA2-36 ACIA-11 

which means that AO is present on pin 36 of 
the PI A2 socket and should be connected to 


pin 11 of the ACIA. 

Photo 1 shows how this addition mounts 
on the printed circuit board. The 6850 ACIA 
is in the top right corner, with the 14411 
right under it. The eight-pin 1C under that is 
the 741 op amp, and the rest of the RS-232C 
interface is just to its left. In this case, the 
25-pin RS-232C connector is on the other 
end of a six-foot cable, but it could have 
been attached to the edge of the board with 
a hot-melt glue gun. 

Adding 128 Bytes More RAM 

The basic 128 bytes of RAM inside the 


DATA BUS 


ADDRESS 

BUS 


A 7 
A8 
A9 
^ AIO 
ENABLE 

(OOOO- IFFF) 
FROM ADDRESS 
DECODER PIN 15 


8 

7 

6 

5 

4 

3 

2 

23 

22 

21 

20 

19 

18 

17 

10 

II 

12 

15 

13 

14 

16 


Fig. 4. 128-byte RAM addition. 


6802 is enough for many applications, but 
sometimes additional RAM is useful. There 
are two easy ways to add a little more RAM. 
The easiest — requiring just one 1C — adds 
another 128 bytes of RAM using an 
MCM6810 RAM for about $5 (Fig. 4). The wir- 
ing list for adding this modification is 



APPLE COMPUTER 

Apple II Plus 16K 1195 00 995.00 

Apple II plus 32K 

Installed 1295.00 1065.00 

Apple II Plus 48K 

Installed 1395.00 1135.00 

Apple II Disk with Controller 595 00 519.00 

Apple II Disk w/o Controller 495.00 489.00 

Apple Pascal Language 

System 495.00 399.00 

Apple Silentype Printer 595.00 529.00 

Silentype Paper (Box of 10) 42.50 39.95 

Integer Firmware Card 200.00 179.00 

Centronics Parallel Printer 

Card 225.00 189.00 

High Speed Serial Card . . . 195.00 169.00 

Proto / Hobby Card 24.95 19.95 

Dos 3.3 60.00 55.00 

Apple Plot 70.00 59.00 

Dos Tool Kit 75.00 65.00 

Apple Fortran 

(Requires Pascal) 200.00 179.00 

Apple Post 49.95 45.00 

Apple Writer 75.00 85.00 

The Cashier 250.00 219.00 

MICROSOFT 

Z-80 Softcard 349.00 329.00 

D.C. HAYES 

Micromodem II 379.00 349.00 

CORVUS 

11-AP 12 Megabyte 

Hard Disk 5295.00 4695.00 

FUJITSU 

16K Ram Set (41 16's) 200ns 160.00 49.95 

PERSONAL SOFTWARE 

Visicalc 149.95 119.00 

Desktop Plan 99.50 79.00 

CCA Data Management 99.50 79.00 




CALIFORNIA COMPUTER SYSTEMS 

7 1 1 4 1 2K Rom/Prom Card 79.97 88.00 

7424 Clock/Calendar Card 125.00 109.00 

7440 Programmable 

Timer Card 1 14.95 98.00 

7470 BCD Analog to 

Digital Card 111.95 98.00 

7490 GPIB IEEE-488 

Interface Card 300.00 259.00 

7520 Extender Board 24.95 22.00 

7710 Asynchronous Serial 

Card 159.95 139.00 

7712 Synchronous Serial 

Card 159.95 139.00 

7720 Parallel Printer 

Interface 119.95 99.00 

7728 Centronics Parallel 

Printer Card 119.95 99.00 

7811 Arithmetic Processor 

Card 399.95 349.00 

MOUNTAIN HARDWARE 

Apple Clock/ 

Calendar Card 280.00 259.00 

Supertalker 300.00 269.00 

ROM Plus 155.00 145.00 

ROM Writer 175.00 159.00 

Keyboard Filter ROM 55.00 49.00 

Copy ROM 55.00 49.00 

Introl X-10 Home 

Control System 300.00 289.00 

Firmware Development 

System 325.00 299.00 

Music System 545.00 499.00 

MICROSOURCE 
Ledger Plus (A/R, A/P, 

Gen. Ledger) 695.00 599.00 

MAR ASSOCIATES 
Supermod II Video 

Modulator 29.95 29.00 

Sup-r-board 80 

Column Board 399.00 349.00 


ANADEX 

DP-8000-AP 96 Column 

Printer 995.00 845.00 

DP-9500/1 High Speed 

Printer 1650.00 1495.00 

CENTRONICS 

730-1 Printer 795 00 695.00 

737-1 Printer 995 00 849.00 

779-2 Printer 1400.00 949.00 

QUEME 

Sprint 5/54 RO Letter 

Quality Printer 2995.00 2695.00 

Sprint 5/45 RO Letter 

Quality Printer 3195.00 2795.00 

Forms Tractor 225.00 199.00 

SANYO 

9 inch B&W Monitor 240.00 189.00 

12 inch B & W Monitor 320.00 289.00 

LEEDEX 

100-80 12 inch B&W 

Monitor 199.00 169.00 

SOFTWARE TECHNOLOGY 

Payroll Package 

(Specify State) 299.00 240.00 

Apartment Manager 399 00 325.00 

Professional Time and 

Billing 399.00 325.00 

Inventory Program 199.00 140.00 

Data Base Management 149.00 99.00 

Mailing List System 89.00 39.00 

COMPUTER SYSTEMS SOFTWARE 
Accounts Receivable 

Package 199 00 149.00 

Sup-r-sort 39.95 29.95 

Serial Print Routine 39.95 29.95 

Baudout Print Routine 39.95 29.95 

ARTSCI INC 

Magic Window Word 

Processing System 99.95 79.95 


TERMS 

Freight prepaid on all Apple products. Vise and 
M/C accepted. We are an authorized Apple Level 
I warranty station and will gladly service in war- 
ranty and out of warranty products. Foreign 
orders welcome, please specify shipment pro- 
cedures and add freight. 


OLENSKY BROS. INC. 

COMPUTER SALES DIVISION 
3765 AIRPORT BLVD. 
MOBILE, AL. 36608 
(205) 344-7448 


CALL COLLECT 
WHEN 
ORDERING! 


62 Microcomputing, October 1980 





shown as Table 2. 

No additional circuitry is needed since 
this 1C has six chip select (CS) inputs. To 
enable the 6810, CSO and CS3 must be high, 
while CS1, CS2, CS4 and CS5 
must be low. In this circuit, these chip se- 
lects work like this: 

CS4 connects to pin 15 of the 74LS138 
address decoder (shown in Fig. 9 of the 
June installment). This pin goes low only on 
valid memory addresses beginning with 000 
in bits A15, A14 and A13; this translates to 
the entire range from 0000 to 1 FFF (in hexa- 
decimal). 

CSO, CS1, CS2 and CS5 connect to 
address bits A7 through A10; together with 
CS4, then, any memory address 
such as 

000x xOOO Ixxx xxxx 

(where x stands for a don’t-care bit, which 
could be either 0 or 1) will select this RAM 
1C. If A12and All, the two don’t-care bits on 
the left, are 00, the 6810 takes on addresses 
from 0080 through 00FF, which is the 128 
bytes just above the 128 bytes already in the 
6802, giving us a total of 256 bytes from 
0000 through 00FF. This is a useful address 
range, since this first group of 256 locations 
(called page 0) is especially easy and quick 
to address in a 6800 or 6802 processor. 

(Because of incomplete address decod- 
ing, if those two don’t-care bits are nonzero, 


this RAM also responds to addresses 0880, 
1080 and 1880, but this doesn’t conflict with 
any other address assignments.) 

Finally, CS3 connects to the Enable sig- 
nal coming from the 6802. This is a timing 
signal that makes sure that the 6810 is 
selected only when valid data actually ex- 
ists on the data bus. As shown in the wave- 
forms in the June installment, data is pres- 
ent on the data bus at the end of the E sig- 
nal and should normally be grabbed off the 
bus at that time. 

When data is coming from the outside 
back to the 6802, the processor does this 
automatically; but whenever data is being 
sent from the 6802 out to some other device 
such as a memory 1C or I/O device, then this 
device must be told when to get the data. 
This is why it wasn’t necessary to send the 
E signal to the 2716 EPROM (which never 
gets any data from the data bus), but has to 
be sent to the PIA, ACIA and all RAM. 

Adding IK More RAM 

A slightly more ambitious project is to 
add an entire IK of RAM with just three 
chips, using the circuit of Fig. 5 for a total 
cost of about $15. These three ICs are 
shown in Photo 1, just to the left of the 
14411 baud rate generator. 

The 74LS138, labeled SEL2 in Fig. 5, is an 
additional address decoder (not the same 


5U 

6810-24 


A0 

♦6802-9 

6810-23 

A1 

*6802-10 

6810-22 

A2 

*6802-11 

6810-21 

A3 

*6802-12 

6810-20 

A4 

*6802-13 

6810-19 

A5 

*6802-14 

6810-18 

A6 

*6802-15 

6810-17 

A7 

*6802-16 

6810-10 

A8 

*6802-17 

6810-11 

A9 

*6802-18 

6810-12 

A10 

*6802-19 

6810-15 

ADDROOOO ' 

*74LS138- 

15 6810- 

DO 

*6802-33 

6810-2 

D1 

*6802-32 

6810-3 

D2 

*6802-31 

6810-4 

D3 

*6802-30 

6810-5 

D4 

*6802-29 

6810-6 

D5 

*6802-28 

6810-7 

D6 

*6802-27 

6810-8 

D7 

*6802-26 

6810-? 

ENABLE 

*6802-37 

6810-13 

GROUND 

6810-1 


R/W ' 

*6802-34 

6810-16 


Table 2. Wiring list for adding an MCM 
6810 RAM. 


as the 74LS138 already on the board). Its 
primary function is to gate the Enable clock 
with the address 2000-3FFF signal from the 
main 74LS1 38 decoder, so that the two 21 1 4 
RAMs get a low CS signal only when 
the E signal is high and the 2000-3FFF 
select signal is low. This is absolutely 
necessary to make sure that the RAM grabs 
data off the data bus at the right time when 
storing. Although this could just as easily 



THE PASCAL/MT4»$250.00 


•Compiler executes under the CP M 
operating system in as little as 32 
K bytes of RAM 

• Interactive Symbolic Debugger which 
enables the programmer to examine 
variables, set a breakpoint, and trace 
procedure calls interactively at run 
time 

• Compiles at the rate of 600 lines per 
minute on a 2 MHZ 8080 

• Programs Execute up to 10 TIMES 
FASTER than popular interpretive 
Pascals 

• The code generated is 8080 object 
code which is ROMable with a mini- 
mum run time overhead of 1.5K bytes 

• Interrupt procedures allow the pro- 


grammer to write interrupt drivers for 
10 and other real time tasks in Pas- 
cal MT 

• Bit manipulations of variables may be 
performed with the built-in proce- 
dures: SETBIT. CLRBIT, TSTBIT. 
SHL. SHR, SWAP. LO. HI. 

• Assembly language subroutines may 
be called from Pascal MT 

• Business arithmetic version of Pascal 
MT is also available 

• Pascal data structures supported are: 
ENUMERATION AND SUBRANGE 
TYPES. RECORD, ARRAY, REAL. 
INTEGER. CHAR, and BOOLEAN 

•Not implemented are: SETS, GOTO, 
GET, PUT 


M-451 


BUSINESS CONTROL PROGRAMS 


FROM THE ORIGINATOR OF THE TRS-80 

P.O. Box 16020 


Ft. Worth, TX 
76133 
(817) 294-2510 



PROJECT 


CORPORATION 


CP/M 2 

• Enhanced Upward Compatible 
FileSystem 

• Powerful New Random Access 
Capabilities 

FMG Corporation now offers the 
CP M 2.2 for the TRS-80 Model II. 
From minidisks, floppy disks, all 
the way to high-capacity hard 
disks, the flexibility of CP M 2.2 
makes it a truly universal operat- 
ing system. The package includes 
an 8" system disk, editor, assem- 
bler and debugyer fur the TRS-80 
Model II. 

AS LOW AS $200.00 


BUSINESS 

• General Ledger 

• Payroll 

• Accounts Payable 

• Accounts Receivable 

These business systems are de- 
signed with the business manager 
in mind! Totally screen oriented, 
they give complete user prompting 
as each entry is required. Major 
changes in your current book- 
keeping method are not neces- 
sary to make these programs work 
for you. 

AS LOW AS $250.00 


CP/M is a registered trademark of Digital Research Corp TRS-80 is a registered trademark < 


tS Reader Service index — page 241 


Microcomputing, October 1980 63 


ADDRESS 

BUS 


ADDRESS 
BUS 



Fig. 5. IK RAM addition to the basic computer. 


be done with a 74LS00 gate at slightly less 
cost, the 74LS138 does a better job since it 
also decodes the addresses better — it re- 
quires that address bits A12 through A10 
also be 0, so that the 2114 RAM only 
responds to the 1 K address range from 2000 
to 3FFF. 

Though we can really make do without 
this, it simplifies things if we ever decide to 
add another pair of 2114s, since the eight 
outputs of SEL2 divide up the 8K address 
range from 2000 through 3FFF into eight 1 K 
ranges. 

We could add another IK of memory by 
wiring up still another pair of 2114s in the 
same way, except that the CS pin on 
this pair would go to pin 14 of SEL2. If it 
weren’t for loading the 6802 address and 
data buses (and lack of room on the board), 
we could thus add a total of 8K memory. In 
practice, though, we would find that having 
much more than IK of memory would over- 
load the buses and start causing other 
problems unless we buffered them. Since 
this would turn the computer into some- 
thing other than what we started with, let’s 
not consider that further. 

Table 3 is a wiring list that shows all the 
wiring needed to add this IK memory ex- 
pansion to the computer. As before, con- 
nection points marked with a star are points 
in the computer where the required signal 
can be obtained. 

A Few Extra Bits 

If you really don’t need a full PIA or ACIA 
(or have already added one and find you still 
need an extra bit or two of input or output), 
then all you need is a flip-flop or three-state 
buffer. The idea is to use readily available, 


inexpensive ICs (Radio Shack has them), 
but take advantage of all the extra unused 
74LS138 outputs. 

Fig. 6 shows how the 74LS367 hex three- 
state buffer can be added to provide six in- 
put bits. The six inputs come in from the 
left, while the six outputs on the right go to 
six bits of the data bus. 

The 74LS367 has six three-state buffers 
divided into two groups — the top two are 
turned on when the signal called Select 2 
goes low, while the bottom four go on when 
Select 1 goes low. 

If we tie these select signals to the un- 
used outputs of the 74LS138 address de- 
coders, we can select either group of buf- 
fers whenever the specified address is used 


in a program. (Normally, the two select 
signals would be connected together to the 
same 74LS1 38 output, but they could go to 
two different pins.) 

For instance, suppose that both select 
pins are connected to pin 12 of the main 
74LS138 address decoder (shown in Fig. 9 
of the June installment). This pin goes low 
whenever any address in the range of 
6000-7FFF is encountered in a program. 

Whenever the computer program does 
any read from any of these addresses, this 
signal turns on the 74LS367 input buffers, 
and the 6802 does a read from these six in- 
put lines. Hence, this makes a simple six-bit 
input port. 

Since the R/W signal isn’t used any- 
where in this circuit, this input port will be 
selected regardless of whether we read 
from, or write out to, one of the addresses in 
the 6000-7FFF range. If we are writing to 
such an address, then the 6802 will be put- 
ting data on the data bus at the same time 
as the 74LS367 does so, and this will result 
in garbage on the bus (as well as undesir- 
able loading on the bus as two drives try to 
force it in different directions). Thus, if we 
use a simple port such as this one, we must 
make sure that our program only reads from 
it, never writes to it. 

Fig. 7a shows the correct way to wire a 
one-bit output port. One of the data bits 
from the data bus goes to the data input of a 
type D flip-flop such as a 74LS74, and a se- 
lect signal from an address decoder (the 
74 LSI 38) goes to the clock. At the end of the 
select pulse — the rising edge shown in the 
diagram — the data from the data bit is 
clocked into the flip-flop. 

Though this is the theoretically correct 
way to wire an output bit, it has two prob- 
lems. First, the D input of the flip-flop adds 
an extra load to the data bus, which may 


50 

RAMI -18 

RAM2-18 

SEL2-16 

A0 

*6802-9 

RAM1-5 

RAM2-5 

A1 

*6802-10 

RAhl-6 

RAM2-6 

A10 

*6802-19 

SEL2-1 


All 

*6802-20 

SEL2-2 


A12 

*6802-22 

SEL2-3 


A2 

*6802-11 

RAhl-7 

RAM2-7 

A3 

*6802-12 

RAM1-4 

RAM2-4 

A 4 

*6802-13 

RAM1-3 

RAM 2 -3 

A5 

*6802-14 

RAMI— 2 

RAM2-2 

A6 

*6802-15 

RAM1-1 

RAM2-1 

A 7 

*6802-16 

RAMI— 17 

RAM2-17 

A8 

*6802-17 

RAM1-16 

RAM2-16 

A9 

*6802-18 

RAMi-15 

RAM2-15 

ADDR2000 7 

*74LS138- 

14 SEL2- 

-5 

DO 

*6802-33 

RAM1-14 


D1 

*6802-32 

RAM 1-13 


D2 

*6802-31 

RAMI —12 


D3 

*6802-30 

RAM1-11 


D4 

*6802-29 

RAM2-14 


D5 

*6802-28 

RAM2-13 


D6 

*6802-27 

RAM2-12 


D 7 

*6802-26 

RAM2-11 


ENABLE 

*6802-37 

SEL2-6 


GROUND 

RAM1-9 

RAM2-9 

SEL2-4 SEL2-8 

R/W 7 

*6802-34 

RAMI— 10 

RAM2-10 

RAMSEL 7 

RAM 1-8 

RAM2-8 

SEL2-1? 

Table 3. Wiring list for adding IK of RAM with two 2114s. 


64 Microcomputing, October 1980 


THE NEXT GENERATION OF MICROCOMPUTERS IS HERE 

AT QUASAR DATA PRODUCTS 



16 BIT POWER 

Z-8000 



AND STILL RUN YOUR 8 BIT SOFTWARE 

IF YOU see it our way then we think we have 
the products for you: 

• The S-100 bus is here to stay. It is not the greatest but with proper 
termination it works reliably at high speeds, and since it is now an 
IEEE standard, it is well defined. 

• The 8 BIT systems are useful but they are the limiting factor for 
many applications. 

• The 16 BIT systems are the way future systems will go. Why not? 
There is very little price difference and an order of magnitude 
performance difference. 

• The real usefulness of the 16 BIT microprocessors will be determined 
by the software. 

• The systems using 5 V 4 inch disk drives really do not have adequate 
memory storage or computer power for many business or scientific 
applications. 

• Sixty-four kilobytes of addressable RAM, the maximum for 8 BIT 
systems, is not adequate for many business or scientific applications. 

• It is not worth buying 8 BIT systems or boards now if you can get 
the same software with 16 BIT systems at about the same price. 



• The new 16 BIT microprocessors have power comparable to 
minicomputers but do not require the same overhead in terms of 
downtime, maintenance, or initial investment. They are more 
versatile in many applications such as real time applications. 

THIS IS WHAT QDF HAS AVAILABLE: 

• A Z-8000 Board that can plug into your existing S-100 Bus System 
(see below for description) 

• A complete Z-8000 System (see below for description) . 

• A Z-8000 System configured for your exact needs. 

• Software to allow you to run all the available Z-80/8080 software 
including CP/M. 

• Software that includes a Monitor, Debugger, Disassembler, and Basic. 

• Software options: a) Extended Monitor, b) Pascal, c) Simulators 
for 8080, Z-80, 6800, 6502, 1802. 

• A Z-80 System (QDP-100) that is upward compatible with the Z-8000. 

THIS IS WHAT IS COMING FROM QDP: 

• A 256 kilobyte RAM card • UNIX 2 operating system. 


Z-8000 SERIES 16 BIT CPU S-100 BOARD - CAN BE PLUGGED INTO YOUR EXISTING SYSTEM $695.00 


’ Fully S-100 IEEE compatible. 

1 Supports existing 8 BIT memory and 8 BIT peripheral 
boards. 

> Capable of reading and/or writing 8 BIT, 16 BIT, or 
mixes 8 BIT and 16 Bit memories automatically. 

1 8 BIT and/or 16 BIT peripheral modules can simultaneously 
co-exist in the same bus without any modifications. 

Capable of operating as a slave processor to enable your existing 
CPU to control the Z-8000. 


Industrial 

Quality 


Supports either segmented CPU or non-segmented CPU. 

• Power-on and reset jump dip switch selectable. 

• Jumper selectable 2 or 4 MHz. operation. 

• Dip switch selectable number and type of wait states. 

SOFTWARE 

• Z-80 emulator enables you to execute your existing 8 BIT software 
without any modifications and allows you to run CP/M 
immediately. 

• Extended Monitor, Debugger, Disassembler. 


QDP-8100 WITH 2 MEGABYTES STORAGE 
STANDARD (OPTIONAL 4 MEGABYTES) 

• Z-8000 series 16 BIT CPU S-100 Board - see above 
SOFTWARE (Provided with system) 

• CP/M 2.2 1 operating system 

• Basic 

• Z-80/8080 Emulator 

• Monitor, Debugger, Disassembler software 

• Optional software: Pascal 

• UNIX 2 operating system coming 


SYSTEMS 


$ 6 , 395 . 



QDP-100 WITH 2 MEGABYTES STORAGE 
STANDARD (OPTIONAL 4 MEGABYTES) 

• Z-80 series 8 BIT CPU S-100 Board (4 MHz. Z-80, Double density 
disk Controller, 2716 Prom Burner 2 Parallel & 2 Serial Ports, real 
time clock) 

SOFTWARE (Provided with system) <fc /% QQK 

• CP/M 2. 2 1 operating system 

• Basic 

• Accounts Receivable, General Ledger, Accounts Payable, 
Payroll with Cost Accounting 

• Optional software: Fortran, Pascal, Cobol, C 


EACH SYSTEM CONTAINS: 

Intelligent CRT terminal (80 characters X 24 lines) • 64 kilobytes RAM • Two 8 inch, double sided, double density floppy disk drives with controller 
• 2 serial and 1 parallel (2 parallel for QDP-100) ports • Attractive woodgrain cabinet with power supplies and cabling 

__ FULL TECHNICAL SUPPORT FROM THE STAFF AT QUASAR DATA PRODUCTS 


4 Mhz 64K Dynamic RAM 

16K - 250” 32K • '350" 48K - *450” 64K - *549” 

QUASAR FLOPPY SYSTEM 

• Two MFE DBL sided drives • Cable • Case & Power Supply 
assembled and tested Wood cabinet *1895” 

QUASAR 2 MEG FLOPPY 

• 2 MFE double sided drives 

• Teletek disk controller board 

• Power supply & cable 

• Wood cabinet 

• CP/M version 2.2 & bios 

• Assembled & tested s 2295°° 

Dealer Inquiries Invited. Hours:9-5:30 M-F 

Specifications Subject To Change 

'CP/M ,M Digital Research MJNIX ,M Bell Lab , Z-8000 ,M Zilog 




TELETEK DBL. DENSITY, DBL. SIDED 

Disk Controller Board s 395 #0 


MFE Double Sided - Double Density 

8 " Floppy Disk Drives, (the best) s 650 00 

Using the Teletek Controller under CP/M, 
THIS DRIVE WILL GIVE YOU ALMOST 
ONE MEGABYTE PER DISK DRIVE. 

Power supply for above s 110 00 


PAPER TIGER 

Includes Graphics * 949 ®* 

Cable for TRS-80 5 39 0< 

Call for Apple 


TI - 820 

Serial Printer - 

Full package options. . . s 1995 0< 


30 Day ARO 


[master charge] 


Checks, money orders accepted 

Add $2.50 freight charges on orders under 10 lbs. Over 10 lbs. F.O.B. Cleveland 

QUASAR DATA PRODUCTS - 

25151 Mitchell Dr., No.Olmsted, Ohio 44070 (216)779-9387 


v* Reader Service index— page 241 


Microcomputing, October 1980 65 



SELECT 2 


FROM 

INPUTS 


+ 5V 



Fig. 6. Simple input port using a 74LS367. 


cause problems If the data bus is already 
heavily loaded. 

Second, since the data bit should be en- 
tered into the flip-flop at the end of the En- 
able signal, this signal should in some way 
be part of the select signal going to the 
clock input. Thus, the outputs of the SEL2 
decoder 74LS138 1C shown in Fig. 5 would 
be suitable, but the outputs of the main 
74LS138 would not. 

If we don’t use the data bus, then the tim- 
ing is not as critical. Fig. 7b shows an alter- 
native idea. Here, the select signal from the 
74LS138 goes to the clock input of a JK flip- 
flop such as the 74LS73, while the J and K 
inputs both go straight to +5 volts. With 
this connection, the flip-flop will toggle ev- 
ery time it gets a clock pulse. Hence, we can 
flip the flip-flop simply by selecting the cor- 
rect address (so the 74LS138 outputs a 
pulse). 

The trouble with this circuit is that we can 
never be quite sure whether the flip-flop is 
on or off at any particular time, since the 
computer has no way of knowing whether it 
started out set or reset when the power first 
came on. In some cases this doesn’t matter 
-in generating music, for instance. 

But if it does, then we could disconnect 
the CLR pin from +5 volts (which was dis- 
abling it) and connect it instead to the reset 
pin of the 6802. Since this pin is always low 
when the system is first turned on, this will 
guarantee that the flip-flop will always be 
reset when we first power up the system. 

Fig. 7c is another possibility. Here we dis- 
able the D input and clock (or the JK and 
clock inputs of a JK flip-flop) by connecting 
them to +5 volts. Instead, we take two dif- 
ferent select outputs from the 74LS138 and 

66 Microcomputing , October 1980 


connect one to the PS (preset) input, and 
the other to the CLR (clear) input of the flip- 
flop. Now we can set or reset the flip-flop 
explicitly. 

For example, suppose the PS input goes 
to the 6000-7FFF output of the address de- 
coder (pin 12), while the CLR input goes to 
the 4000-5FFF output (pin 13). Any time we 
access any address in the 6000 range, the 
flip-flop gets a low PS pulse and sets; if you 
access any address in the 4000 range, it will 
reset. 

Since we only have a few unused outputs 
on the 74LS138, we obviously cannot con- 
nect too many such flip-flops, but with four 
decoder outputs we could trigger three flip- 
flops simply by connecting all three resets 
to the same output and connecting the 
three sets to three outputs. Now we don’t 
have completely independent control over 
the flip-flops, since they will all reset togeth- 
er. But this may still be quite useful. 

From Hardware to Software 

Having seen how to build, test and even 
expand our control computer, it’s time to 
examine how to program it. Although the 
computer can run programs written in Tiny 
BASIC when properly expanded, let’s keep 
in mind its primary purpose — to be a dedi- 
cated control computer. That requires that 
we program it in machine or assembly lan- 
guage. 

So let’s discuss machine- and assembly- 
language programming. Rather than start 
at the very beginning, we will assume that 
all our readers have some familiarity with 
programming in BASIC. 

Since 6802 machine language is identical 
with that of the 6800, this discussion ap- 
plies to both processors. 

6802 Internal Structure 

When programming in BASIC, we tend to 
think in terms of the job to be done, rather 
than the way in which it is being done. Ma- 
chine- and assembly-language program- 
ming is different — you must constantly 
think of the hardware that is doing the pro- 
gram. Thus, you can write a BASIC program 
without even knowing what computer it will 
be used on; but to write programs in ma- 
chine or assembly language, you must 
know what is inside the computer and -to 
some extent — how it works. This makes 
programming tougher, but also more fun 
and more challenging. 

Fig. 8 shows a simplified view of what is 
inside the 6802 (or 6800) processor. (A few 
extra registers, as well as the 128-byte RAM, 
are not shown, simply because they do not 
concern us at this point.) 

Within the 6802, the hardware consists 
primarily of a set of various registers, plus 
an eight-bit transfer bus that interconnects 
them and allows data or addresses to go 


back and forth within the processor. A reg- 
ister is essentially a group of storage ele- 
ments— flip-flops or dynamic memory cells 
-that holds a binary number. While a pro- 
gram is running, numbers are constantly 
being moved back and forth between these 
registers. 

Some of these transfers are managed by 
the 6802’s internal control circuitry and are 
completely out of our control; other trans- 
fers are directly controlled by the program 
instructions we write. 

Some of the registers hold eight bits, 
some 16 bits. One (the condition code regis- 
ter at the top) only holds six. In any case, all 
of these are interconnected by an eight-bit 
transfer bus, so that each half of a 16-bit 
register is connected to the bus separately. 
When a 16-bit number is transferred from 
one place to another, it is moved in two 
eight-bit pieces. This will help to explain 
why some instructions are faster than oth- 
ers. 

Two of these registers are called accu- 
mulators; they are the A accumulator and 
the B accumulator. An accumulator is a 
type of register that can not only hold a 
number, but can also do some additional 
operations on it, such as addition or sub- 
traction. Both 6802 accumulators hold 
eight-bit numbers. Virtually all arithmetic 
operations in a 6802 system are done in one 
of the accumulators. 

Accumulators are generally the work- 
horses of a computer. There are instruc- 
tions for loading a number from memory in- 
to an accumulator, for adding or subtract- 
ing numbers in an accumulator, or for stor- 
ing a number from an accumulator back in- 
to memory. In addition, numbers in an accu- 


♦5V 



Fig. 7. Three simple output ports. 


mulator can be tested in various ways, 
moved from one accumulator to another or 
shifted left or right. 

The six-bit register is the condition-code 
register. Though it is called a register for 
convenience, it really is composed of sever- 
al different parts, each of which holds just 
one bit. These bits are used to indicate 
whether the result of a previous operation 
had some specific trait, such as being zero, 
nonzero or negative. One of these bits is 
also used to control the interrupt system. 
(Although this register only has six bits, 
when we transfer its contents into an eight- 
bit register or into memory, we pick up an 
extra two bits along the way. These some- 
times fool us into thinking this register real- 
ly has eight bits when it does not.) 

Another useful register is the index regis- 
ter. Though the index register can be used 
for a variety of purposes, its most common 
use is to hold and manipulate addresses; 
thus it is a 16-bit register so that it can hold 
a full 16-bit address. 

The index register can be loaded from 
memory; its contents can be incremented 
or decremented (increased or decreased by 
1) or stored back into memory. In addition, 
the contents of the index register can be 
used as a pointer to point to a specific loca- 
tion in memory which will be accessed at 
some point. 

Another 16-bit register is called the stack 
pointer. This register points to the next 
empty location in the stack; the stack, in 
turn, is a memory area set aside for tempo- 
rary storage of data and addresses. A com- 
mon use for the stack is to hold the return 
address from a subroutine — in terms of BA- 
SIC, this means that when a go-to-subrou- 
tine instruction (such as GOSUB) is exe- 
cuted, the computer places into the stack 
the address of the instruction it should 
return to when the subroutine is finished. 
The stack pointer register is simply a 
pointer used to indicate which part of the 
stack has been filled up and which part is 
still empty. As numbers and addresses are 
put into or taken from the stack, the pointer 
keeps changing, so that it always points to 
the next empty location in the stack. 

The last 16-bit register of concern to us is 
the program counter. Actually, the program- 
mer doesn’t have much control over the pro- 
gram counter, since there are no instruc- 
tions that specifically let you manipulate 
that register. But the program counter is im- 
portant since it keeps tab on the next in- 
struction to be performed in our program. It 
is affected by transfer instructions (which 
are similar to BASIC’s GOTO, GOSUB or RE- 
TURN). 

Though a few more registers are inside 
the 6800 or 6802, these are used internally 
and are not normally used by the program- 
mer. 



Fig . 8. The inside of the 6802. 


If you are familiar with other processors, 
you may note that the 6802 registers are dif- 
ferent from those you are familiar with. The 
register structure of a processor — and the 
instructions it has to use them — distin- 
guishes one microprocessor from another. 
Some processors, such as the 8080 or Z-80, 
have many different registers; others, such 
as the T MS-9000 or the SC/MP, have few. 

Actually, the number of registers does 
not really determine whether a processor is 
powerful or not, since those processors 
that have few registers tend to have instruc- 
tions that allow them to do operations that 
are optimized to work without them. 

Though various articles have compared 
different microprocessor structures (see, 
for example, the excellent articles by Hal T. 
Gordon entitled “Instruction Sets Examined 
and Compared” in the March and April 1980 
issues of Microcomputing), different pro- 
grammers will prefer different processors. 
Many programmers like the 6800 and 6802 
because it is simple yet powerful; the fact 
that its architecture is more traditional 
rather than unusual (such as the Tl TMS or 
the Signetics 2650) may also have a lot to do 
with that. 

Computer Languages 

Computer programs must be written in a 
special way so that the computer will be 
able to understand them. This generally re- 
quires that we use a certain vocabulary and 
a set of grammar rules, much like a human 
language. Thus we get the term “computer 


language” to describe the way a program is 
written. 

There are essentially three types of com- 
puter languages: 

•Machine language is the only language 
that the computer can really understand. 
Since the computer works with binary dig- 
its— ones and zeros — the machine-lan- 
guage program is written in these as well. 
When a machine-language program is en- 
tered into the computer, it can be immedi- 
ately performed. 

Note that machine language is directly 
tied into the hardware of the processor. 
Thus, different processors will have differ- 
ent machine languages, and a program writ- 
ten for one will not run on another (unless 
you intentionally copy the language of the 
other). 

•Assembly language is one step above ma- 
chine language. In many ways, it is similar 
to machine language in that generally one 
instruction in the assembly-language pro- 
gram is equivalent to one instruction in the 
machine-language program. The difference 
is that that instruction consists of numbers 
in machine language, whereas it may con- 
sist of simple letter codes in assembly 
language. 

Since assembly language cannot be di- 
rectly understood by the computer, it must 
first be translated into machine language. 
But since the two languages are so similar, 
that translation is fairly simple. For short 
programs you can do it yourself; for longer 
programs this translation is done by still an- 


Microcomputing, October 1980 67 


other computer program called an assem- 
bler. 

Since assembly language is so close to 
machine language that it is translated on a 
more-or-less one-to-one basis (one assem- 
bly-language instruction becomes one ma- 
chine-language instruction), different ma- 
chine languages must result in different as- 
sembly languages. An assembly-language 
program written for one processor will also 
not run on another. 

•Higher-level languages, also sometimes 
called problem-oriented languages, are at 
the top of the list. These languages are 
completely different from machine or as- 
sembly language and generally require 
quite extensive translation into machine 
language before they can be executed on 
the computer. This translation could be 
done manually, but even for short programs 
this is not practical; hence, translation is 
usually done by a translator program called 
a compiler or an interpreter. 

Higher-level languages are aimed at a 
particular application, rather than a particu- 
lar computer. Since extensive translation is 
required anyway, there is no need to tailor 
the language to fit a machine. A language 
such as BASIC is similar whether it runs on 
an IBM 370 or a TRS-80. Obviously, though, 
the translator for the two computers will be 


different, and the resulting machine lan- 
guage will also be much different. 

The higher-level languages are oriented 
toward specific kinds of problems. Lan- 
guages such as BASIC, FORTRAN, ALGOL 
or MAD are at their best with numeric prob- 
lems from math or engineering; COBOL or 
RPG might best be suited for business ap- 
plications; while languages such as LISP, 
SNOBOL or LOLITA might be good for 
strings. 

(There have been hundreds of higher-lev- 
el languages in the few short decades of 
computers, including some with interesting 
names such as JOVIAL, MADCAP, ADAM 
and BASEBALL. If you are interested in a 
readable history of the subject, I strongly 
recommend Programming Languages: His- 
tory and Fundamentals by Jean E. Sammet, 
published by Prentice-Hall, Inc., in 1969 and 
readily available in larger libraries.) 

There are many exceptions. Some smart 
assemblers allow a single assembly-lan- 
guage instruction to translate into many 
machine-language steps. And in some com- 
puters, the translator for a higher-level lan- 
guage is built-in so that it almost looks as 
though this higher-level language is the on- 
ly language the machine can understand. 
(That is certainly how a TRS-80 must appear 
to the beginner!) 


In a higher-level language, we are con- 
cerned with the job to be done, and not with 
the mechanics of how it is to be achieved. 
For example, to add two numbers in BASIC, 
we simply say 

C = A + B 

In machine or assembly language, we must 
be concerned with small details, such as 
where in memory A, B and C are to be found 
and what part of the processor will be used 
to perform the addition. 

Remembering that memory locations are 
referred to by their addresses, we might 
have A in location 100, B in location 101 and 
C in location 102. Then the C = A + B pro- 
gram would have to be broken down into 
smaller steps such as: 

1. Take the number in location 100 and 
bring it into accumulator A. 

2. Add the number in memory location 
101 to whatever is already in accumulator A. 

3. Store the number from accumulator A 
into memory location 102. 

If the three numbers are larger than what 
can be stored in just a single eight-bit mem- 
ory location, then they might be split up 
among several consecutive locations, and 
the machine- or assembly-language pro- 
gram to perform a simple C = A + B equa- 
tion might consist of dozens or even hun- 
dreds of steps. ■ 


^ Produced in U.K. and widely used in England and USA 
T COMPLETE BUSINESS PACKAGE 


INCLUDES EVERYTHING FROM INVENTORY TO 
SALES SUMMARY. PROMPTS USER AND VALIDATES ENTRIES. 

MENU DRIVEN 

BUS VER 3.00 to VER 9.00 PET and CP/M. 

Approximately 60-100 entries/input require 2-4 hours weekly and entire business is under control 


* PROGRAMS ARE INTEGRATED 

01 = * ENTER NAMES & ADDRESSES 

02 = ‘ENTER/PRINT INVOICES 

03 = ‘ENTER PURCHASES 

04 = * ENTER A/C RECEIVABLES 

05 = * ENTER A/C PAYABLES 

‘ENTER/UPDATE INVENTORY 

ENTER/UPDATE ORDERS 

‘ENTER/UPDATE BANKS 

‘EXAMINE/REPORT SALES LEDGER 

‘EXAMINE/REPORT PURCHASE LEDGER.. 

•MONITOR INCOMPLETE RECORDS 

12 = ‘EXAMINE PRODUCT SALES 


..ENTER WHICH ONE? 


SELECT FUNCTION BY NUMBER.. 

13= ‘PRINT CUSTOMERS STATEMENTS.. 

14 = ‘PRINT SUPPLIERS STATEMENTS.. 

15 = ‘ PRINT AGENT STATEMENTS.. 

16= ‘PRINT TAX STATEMENTS.. 

17= GENERAL HELP.. 

18= ALTER VOCABULARIES.. 

19= PRINT YEAR AUDIT.. 

20= PRINT PROFIT/LOSS A/C.. 

21 = ENDMONTH MAINTENANCE.. 

22 = PRINT CASHFLOW FORECAST.. 

23= ENTER PAYROLL NO RELEASE.. 

24 = EXIT SYSTEM 


DATABASE MANAGEMENT INCLUDES 

*** FILE CREATE/DELETE/SEARCH. ** # RECORD CREATE/DELETE/SEARCH/4 OPTION PRINT. *** RECORD SORT ANY FIELD ALPHA OR NUMERIC. *** INDEX 
SEARCH OR GENERAL SCAN/PRINT IN ANY FIELD (EG TOWN OR NAME). * * * 4 ARITHMETIC FUNCTIONS TO USE AS CALCULATOR ON LAST 4 FIELDS. * * * AUTO 
CHECK TO PREVENT DOUBLE ENTRY TO FILE MANAGEMENT SYSTEM. DYNAMICALLY ALLOCATING INFORMATION TO MINIMIZE DISK SPACE CONSUMPTION 

VERY FLEXIBLE-EASY TO USE 

G.W. COMPUTERS U.K. ARE THE PRODUCERS OF THIS BEAUTIFUL PACKAGE 

VER 3.00 (EXC PROG 19,20,22.23) = 475.00, VER 4.00 INCLUDES AUTO STOCK-UPDATE = 575.00. VER 5.00 INCLUDES AUTO BANK UPDATE = 675 00. VER 6.00 IN 
CORE = 775.00. VER 7.00 (INC 19.20.22.23) NOT YET RELEASED = 875.00. VER 8.00 RANDOM ACCESS = 900.00, VER 9.00 TRANSLATEABLE = 975.00 

+ + + EACH LEVEL OVERRIDES LOWER ONE 


WE EXPORT TO ALL COUNTRIES CALLERS ONLY BY APPOINTMENT CONTACT TONY WINTER ON 01.636.8210 
89 Bedford Court Mansions, Bedford Avenue, London W.C.1. ^75 

NOTE!!! All versions, especially 9.00 use broad financial principles and 9.00 is one 16K core program releasing both disk 
drives for data storage, as well as being translateable into any foreign language. 


68 Microcomputing, October 1980 





WE WILL NOT BE UNDERSOLD 


16K MEMORY UPGRADE KITS 2 for $85 $45 

for TRS-80*, Apple II, (specify): Jumpers $2.50 


PRINTERS NEC Spinwriter 

| Letter Quality High Speed Printer 

Includes TRS-80* interface software, quick 
[change print fonts, 55 cps, bidirectional, 
high resolution plotting, graphing, propor* 
' tional spacing: R.O. $2579 

R.O. with Tractor Feed $2679 KSR with Tractor Feed $2995 



779 CENTRONICS TRACTOR FEED PRINTER 


$969 


Same as Radio Shack line printer I 

737 CENTRONICS FRICTION & PIN FEED PRINTER $799 

9x7 matrix 

730 CENTRONICS FRICTION & PIN FEED PRINTER $629 


7x7 matrix Same as Radio Shack line printer II 
PI CENTRONICS PRINTER $269 

Same as Radio Shack quick printer 
PAPER TIGER (IP440) $939 

Includes 2K buffer and graphics option 
TI-810 Faster than Radio Shack line printer III 

Parallel and serial w/TRS-80* interface software 

with upper and lower case and paper tray $1599 
OKIDATA Microline 80 Friction and pin feed $559 

Tractor Feed, friction, and pin feed $679 

EATON LRC 7000 + 64 columns, plain paper $299 

ANADEX DP-9500 $1359 DP-8000 $825 


DISK OPERATING SYSTEMS 

PATCHPAK #4 by Percom Data 

CP/M® for Model I, Zenith $145 • for Model II, Altos 

NEWDOS Plus 40 track 

NEWDOS 80 


$ 8.95 

$169.00 
$ 99.00 
$135.00 


ACCESSORIES 

HEAD CLEANING DISKETTE: Cleans drive Read/Write head in 
30 seconds. Diskettes absorb loose oxide particles, fingerprints, 
and pther foreign particles that might hinder the performance of 
the drive head. Lasts at least 3 months with daily use. Specify 
5V4"or8". $20 ea/$45 for 3 

FLOPPY SAVER: Protection for center holes of 5V4" floppy disks. 
Only 1 needed per diskette. Kit contains centering post, pressure 
tool, tough 7-mil mylar reinforcing rings. Installation tools and 
rings for 25 diskettes. $11.95 

Re-orders of rings only $ 7.95 

EXTERNAL DATA SEPARATOR: Eliminates data separation prob- 
lems (crc). Improves reliability. This plug in unit comes fully 

assembled and tested. $29.95 

RS232 $84.00 


DISK-DRIVE EXTENDER CABLES: Fits all mini-disk drives. 


$16.95 

SIX (6) PRONG ISOLATOR $54.00 

AC FILTER/6 PRONG POWER STRIP $39.00 

DISK DRIVE CABLES: 2 drive $29.00 4 drive $35.00 

DUST COVERS: TRS-80/Apple $ 7.95 

PLASTIC DISKETTE HOLDER $ 8.00 

RF MODULATOR: Adapts video to TV $35.00 

TRS-80 & OTHER MYSTERIES $18.95 


CAT MODEM Originate and answer same as $148 

Radio Shack Telephone Interface II 

LEEDEX MONITOR Video 100 $119 

ZENITH Color Monitor $379 

SANYO Model VM 4509 Monitor $179 



DISKDRIVES $314 

40 track, 102K Bytes. Fully assembled and 
tested. Ready to plug-in and run the moment 
you receive it. Can be intermixed with each 
other and Radio Shack drive on same cable. 
TRS-80* compatible silver enclosure. 90 day 
warranty. One year on power supply. External 
card edge included. 


FOR TRS-80* 

CCI-100 5V«", 40 Track (102K Bytes) for Model I $314 

CCI-280 5 Vi ", 80 Track (204K Bytes) for Model I $549 

CGI-800 8" Drive for Model II (Vi Meg Bytes) $795 

For Zenith Z89 

CCI-189 5V«*, 40 Track (102K Bytes) add-on drive $394 

Z-87 Dual 5 Vi " add-on drive system $995 

DISKETTES — Box of 10(5 Vi")- with plastic library case $24 

8" double density for Model II (box of 10) $36 


COMPLETE SYSTEMS 

ALTOS 64K, DD, SS, 2-Drive, 1MB 
TRS-80* Model II-64K 
TRS-80* LEVEL II-16K with keypad 
TRS-80* Expansion Interface 
APPLE 16K 

HEWLETT PACKARD HP-85 
ZENITH Z89, 48K all-in-one computer 

ZENITH Z19 

TELEVIDEO 912B $745 

ATARI 400 $489 

APF M1000 $99 

MATTEL INTELLIVISION 


$3995 
$3499 
$689 
$249 
$989 
$2999 
$2555 
$740 
920B $769 
ATARI 800 $769 
IM-1 $499 
$249 


SOFTWARE FOR THE TRS-80* SEX 


INTELLIGENT TERMINAL SYSTEM ST-80-III BY 
LANCE MIKLUS: Enables a TRS-80* to act as a dial- 
up terminal on any standard time sharing network. 
Provides a TRS-80* with control key, ESC Key, 
Repeat Key. Rub Out Key, Break Key, full upper and 
lower case support, selectable printer output and 
program selectable transmission rates $139 


CCA-DATA MANAGEMENT SYSTEM: Automate your 
information processing tasks. You can create a file of 
customer information; quickly and easily add, delete 
or update records; search a file; keep a file in order of 
the value in any field; and print records and labels in 
any desired sequence or from just a part of a file. 
Requires 32K TRS-80 and one drive. $74.95 

S & M SYSTEMS 

INSEQ-80™: indexed Sequential Access Method 
(ISAM) for the TRS-80 Model I. A must for anyone writ- 
ing business programs. Eliminate wasted disk space 
from direct record processing. Split second access to 
any record. Access data records instantly via alpha/ 
numeric “key” eg. Part NR, zip code or sequentially in 
ascending key sequence. Add/modify records in any 
order. Access up to three files per program — File' 


may be spread over multiple disks. Machine language 
processing from your basic program. Utility program 
to convert direct files to INSEQ-80 format $49.95 


FULLY INTERACTIVE ACCOUNTING PACKAGE: 

ISAM (INSEQ-80) based. Includes General Ledger, 
Accounts Payable. Accounts Receivable and Payroll. 
System runs “stand alone” or “co-ordinated G/L“ at 
users option. Based on Osborne accounting method. 
Requires 32K, TRS-80, 2 or 3 drives. N/A CA. 

General Ledger $99 

Accounts Receivable $99 

Accounts Payable $99 

Payroll $99 

Osborne books: Req'd as additional documentation 
$20 ea 


INVENTORY Requires 32K, TRS-80. 1 drive $125 
INSORT-90: Callable form BASIC via USR. Sorts “Ran- 
dom” Disk Files. "Disk” to “Disk” sort times — 350 
records in 35 secs, 1000 records in 6 minutes, 3500 
records in 12 minutes. Machine language processing. 
Up to 35 sort keys ascending/descendina. Utility to 
build BASIC program. Runs under NEWDOS. $49 95 


CP/M BASED SOFTWARE for 
Zenith, Altos, Radio Shack, Apple w/Manual 


Z-80 SOFTCARD FOR APPLE Your key to future soft- 
ware expansion. Get the best of both worlds. Apple’s 
6502 and CP/M Z-80. Plug in the card and gel a Z80. 
Supports Apple language card and all Apple peripher- 
als. Comes with set of three manuals. $339 


CCI-TELNET VERSION 5: A communication Package 
which enables microcomputer users to communicate 
both with Large Mainframes and other microcom- 
puters. Extensive commands make it useful in many 
applications where communication between com- 
puters is necessary. Powerful terminal mode enabling 


user to save all data from a session on disk. Com- 
pletely CP/M compatible. Multiple communication 
protocols supported. Able to transfer files in both 
directions without protocol where the other machine 
does not support any protocol. Extensive ON- 
SCREEN help. Source code provided $149 

MICROPRO-WORD-STAR: Menu driven visual word 
processing system for use with standard terminals 
Text formatting performed on screen. Facilities for text 
paginate, page number, justify, center and underscore. 
User can print one document while simultaneously 
editing a second. Edit facilities include global search 
and replace. Read/Write to other text files, block 
move, etc. Requires CRT terminal with addressable 
cursor positioning. $399 


dealer (national/international) inquiries invited Send for FREE Catalogue 


The CPU SHOP 

TO ORDER CALL TOLL FREE 1-800-343-6522 

Massachusetts residents call (617)242*3361 

For detailed technical information, call 617/242-3361 

Hours: 10AM-6PM (EST)M-F(Sat.till 5) 

‘TRS-80 is a Tandy Corporation Trademark ® Digital Research 


5 Dexter Row, Dept. K10M 
Charlestown, Massachusetts 02129 

Massachusetts residents add 
5% sales tax 


Quantities on some items are limited 



v* Reader Service index— page 241 


Microcomputing, October 1980 69 








The days of complicated, unreliable, 
dynamic RAM are gone: 



the ultrabyte memory board 

^ 1 Q Q QR I complete kit \ 

^ | U J y with 16K memory] 

Netronics consistently offers innovative products at un- 
beatable prices. And here we go again — with JAWS, 
the ultrabyte 64K SI 00 memory board. 

ONE CHIP DOES IT ALL 
JAWS solves the problems of dynamic RAM with a 
state-of-the-art chip from Intel that does it all. Intel's 
single chip 64K dynamic RAM controller eliminates 
high-current logic parts . . . delay lines . . . massive 
heat sinks . . . unreliable trick circuits. 
REMARKABLE FEATURES OF JAWS 
Look what JAWS offers you: Hidden refresh . . . fast 
performance ... low power consumption . . . latched 
data outputs ... 200 NS 4116 RAMs . . . on-board 
crystal . . . 8K bank selectable . . . fully socketed . . . 
solder mask on both sides of board . . . designed for 
8080, 8085, and Z80 bus signals . . . works in Explorer, 
Sol, Horizon, as well as all other well-designed S100 
computers. 

I GIVE YOUR COMPUTER A BIG BYTE OF MEMORY | 
POWER WITH JAWS— SAVE UP TO S 90 ON 
INTRODUCTORY LIMITED-OFFER SPECIAL PRICES / 1 

UNDECIDED? TRY A WIRED 16K JAWS IN YOUR COMPUTER ON OUR 
JfrOA YJdONEY^ BACK £FftRJSPECJFY YOUR MMPUTER)_ _ 

CONTINENTAL ITS " cTeOIT CANO BUYERS OUT SIDE CONNECTICUT CALL 

CALL TOLL FREE 800-243-7428 

From Connecticut Or For Asaiitanco. (203) 354-9375 

RESEARCH & 

IdevelopmentltdJ 

333 Litchfield Road, New Milford. CT 06776 ■ 
Please send the items checked below: Dept, kio 

□ JAWS 16K RAM kit. No. 6416. $199.95.* 

□ JAWS 16K RAM fully assembled, tested, burned in, 

No. 6416W, $229.95 * 

□ JAWS 32K RAM kit. No. 6432, (reg. price $329.95), 

SPECIAL PRICE $299.95.* 

□ JAWS 32K RAM fully assembled, tested, burned in. 

No. 6432W, (reg. price $369.95). SPECIAL PRICE 
$339.95* 

□ JAWS 48K RAM kit. No. 6448, (reg. price $459.95), 

SPECIAL PRICE $399.95 * 

□ JAWS 48K fully assembled, tested, burned in, No. 

6448W, (reg. price $509.95), SPECIAL PRICE 
$449.95 * 

□ JAWS 64K RAM kit, No. 6464. (reg. price $589.95). 

SPECIAL PRICE $499.95 * 

□ JAWS 64K RAM fully assembled, tested, burned in, 

No. 6464W, (reg. price $649.95). SPECIAL PRICE 
$559.95 * 

□ Expansion kit, JAWS 16K RAM module, to expand 
any of the above in 16K blocks up to 64K, No. 16EXP, 
$129.95.* 

*AII prices plus $2 postage and handling. Connecticut 
residents add sales tax. 

Total enclosed: $ 

□ Personal Check □ Money order or Cashiers Check 
CJ VISA □ MASTER CHARGE (Bank No ) 


From Connecticut Or For Asaiitanc 

ISMIEIBOK 


i Signature 



J Print Name 



i Address 



I City 



* State 

7ip 


l □ Send me more information 





Full Size ASCII Keyboard 
Calculator Style Numeric Pad 
8K RAM (up to 48K RAM) 
Resident 4K Monitor ROM 
Interchangeable ROM Pacs 


Dual Cassette I/O 
Serial and Parallel I/O 
30 x 64 Character Display 
240 x 512 Graphics Resolution 
128 User Definable Characters 
S-IOO Compatable 




Purchase 16K RAM Sorcerer II 


at the Regular List Price and 
Receive 32K of Free RAM 
Installed for a Total of 48K RAM. 


$1295 

WE PAY ALL SHIPPING AND HANDLING WITHIN THE U.S. 
Connecticut residents please add 7 1/2% sales tax. 

MICRO DISCOUNT SERVICE 

243 Old Colony Road Eastford, Conn. 06242 
(203)974-1214 ^126 


12" BLACK & WHITE 
LOW COST VIDEO 
TERMINAL 

Easily interfaced with Radio Shack TRS 80 

$159.00 LIST 

Will sell 6 feet coaxial cable $5.00 
Texas residents add 5% sales tax. 

Add $5 for shipping and handling 



• Ideal for home, personal and business computer systems: 
surveillance monitors • 12" diagonal video monitor • Com- 
posite video input • Compatible with many computer 
systems • Solid-state circuitry for a stable & sharp pic- 
ture • Video bandwidth— 12 MHz ±3 DB • Input im- 
pedance— 75 Ohms • Resolution— 650 lines Minimum IN 
Central 80% of CRT; 550 Lines Minimum beyond central 80% 
of CRT ref El A RS-375 • Dimensions-1 1.375" high; 16.250" 
wide; 11.250" deep (exclude video input con- 
nector) • Weight— 6.5 KG (14.3 lbs) net 

(Jse Master Charge/Visa or send money order. 

Micro Products Unlimited 

P.O.Box 1525, Arlington. TX 76010 
817/461-8043 

Dealer inquiries welcome ^ 


[ Maxell* or BOysan ] 

P A 

p T 

e felff . f i w J ! 

....... 77 . G 

T 8 SINGLE SIDE N 

R DOUBLE DENSITY Box of 10 for $00 E 

§ 8” DOUBLE SIDE R 

8 DOUBLE DENSITY Box of lOfor $70 A 

0 5 V’ MINI Box of 10 for $50 L 

, DYSAN" DISKS 

B 5V MINI Box of 5 for $25 M 

M ( Specify - 8" Soft or Hard Sector/5” Soft or Hard Sector) A 

w E 

A C.O.D.- $1.00 Additional 

N 

L 238 EXCHANGE STREET M 

J CHICOPEE, MA. 01013 jj 

1 413-592-4761 „ U1 C 

L established 1960 • closed mondays 

ATARI MBHMTI/99’4 PET mJ 


MEMOREX 

DISKETTES 
& CARTRIDGES 

for your computer or word processor 

BUY THE BEST FOR LESS. 
Lowest prices. WE WILL NOT 
BE UNDERSOLD!! Buy any 

quantity. Call free # (800) 235- 
4137 for prices and* information. 



ATARI 800 
1 6 K $799* 


Pet; 16 K $79 
EXIDY Sorcerer 
1 6 K $9994 

Call or write for price list with 
comparable savings on a full line 
of peripherals and other name brands 




SURPLUS ELECTRONICS 


ASCII 


ASCII 


IBM SELECTRIC 
BASED I/O TERMINAL 
WITH ASCII CONVERSION 
INSTALLED $645.00 

• Tape Drives • Cable 

• Cassette Drives • Wire 

• Power Supplies 12V15A, 12V25A, 
5V35A Others, • Displays 

• Cabinets • XFMRS • Heat 
Sinks • Printers • Components 
Many other items. Send for free catalog. 

WORLDWIDE ELECT. INC. 
130 Northeastern Blvd. 
Nashua, NH 03062 ^122 

Phone orders accepted using 
VISA or Master Charge 
TOLL FREE 

603-889-7661 • 1-800-258-1036 


70 Microcomputing, October 1980 







TRS-80 OTHER NEEDS FILLED FOR LESS 

+ + + COMPATIBLE DISK DRIVES WITH POWER SUPPLY AND CASE— 120 DAY WARRANTY + + + 

* 40 TRACK (204,800 BYTE/DISK) USE BOTH SIDES, ANTI-CRIMP/POWER PROTECT $329 

* 8 IN. DRIVE & P.S./CASE $749 WITH P.S./CASE FOR 3 DRIVES $929 

* 80 TRACK (204.8K BYTE) 90 DAY WARRANTY $479 

* 4-DRIVE CABLE $28 * * 10 DISKS-5 IN. @ $24-8 IN. <g> $36HARD CASE $3 & 5 

••• BASE 2 PRINTER-(60 LINE/MIN, 72,80,96,120 or 132 CHAR. LINE BI-DIRECT DOT MATRIX IMPACT 96 
CHAR ASCII, 15 BAUD RATES) $499 2K BUFFER, GRAPHICS, & TRACTOR OPTION AVAIL.* •• 

* CENTRONICS 737 $839 + + + + + CABLE @$25 

* HARRIS SELECTRIC (WORD PROCESSING-TYPEWRITER & PRINTER) $790 

* LOWER CASE FOR CENTRONICS 779/RADIO SHACK LINE PRINTER 1 -EASY INSTALL $99.95 

* UPS (UNINTERRUPTIBLE POWER SUPPLY) PREVENT POWER DROP SURGE OR OUT? FROM $195 

* CAT MODEM (ORIG/ANS) $144 ++++++++ 16K MEMORY SET (200 NANO) $44 

* 16K L2 RADIO SHACK COM PUT t R SYSTEM $649 

* APPLE, ATARI, RADIO SHACK MODEL 1/2 HARDWARE/SOFTWARE DISCOUNTED A/R, A/P, G/L, P/R FOR 
$360 or $100 EA. (MODEL 1) & $630 OR $165 EA. (MODEL 2). APPLICATIONS INTERACT & ARE COMPLETE & 
PROFESSIONAL. WILL RUN ON OTHER COMPUTERS. THIS IS A SPECIAL INTRODUCTORY PRICE. 

* ASK FOR FREE FLYER WITH OUR LOW PRICES— DEALER INQUIRIES INVITED MASS. RESIDENTS ADD 
5% TAX — F.O.B. TEWKSBURY-FREIGHT EXTRA. 

M/C, VISA OR CHECK ACCEPTED. TRS-80 IS A REG. TRADEMARK OF TANDY CORP. 

*^140 

L-OMNITEK systems — 24 MARCIA JEAN DR., DEPT. K, TEWKSBURY, MA 01876 CALL 61 7-851 -31 56 _ 



S25C? 


Our 50/80 
INTERFACE 
lets you connect 
your Radio Shack 
TRS 80 - Model 1 
to the IBM Electronic Typewriter Mod 50, 60 or 75. 
Aside from yielding the best looking printouts and 
listings you'll ever see, our system lets you center 
titles, underline words & phrases, justify numerical 
columns, indent text and more - from your own pro- 
grams and most others. Right justified proportion- 
ally spaced typesetting is even possible with the 
IBM 50! The most cost effective word processor 
ever, (this ad is an example) ^ 250 00 


SOFTWARE also available for any TRS80: 

SUPERDIR - displays a menu like directory in DOS 
from which you can RUN or KILL any program, dis- 
play updated FREE space & print the display, all 
with single key commands. In fast acting Z80 code, 
only $14.95 (DOS). 

INMOD3 - easily used Z80 system program that can 
give any BASIC program professional keyboard 
entry. Blinking cursor, upper /lower case, user 
defined input length, repeat keys & single key- 
stroke control codes. Makes INKEY$ obsolete; 
saves 1000 bytes over BASIC equivalent; for the 
rankest amateur! $14.95 (L2 or DOS) . 

INMOD3 Plus - same but works with Percom "Speak 2 
Me" : each character is spoken as entered! $1 9. 95 

* * * INTRODUCING our new MX 80 FIRMWARE 
Interface and Modules. Software now in hardware 
form; utilizes the unused 2K lower mem. Write or 
call. VISA SMC. Dealers encouraged! 

MEDIAMI* 

PO Box 8775 

Universal City, CA. 91608 
213-475-9949 
Micronet# 70250,321 



THE SPIKE-SPIKERtm 


with transient absorber and filters 


Computer Power Console 

Protects computer equipment from 
most power line transients 

✓ Provides convenience of plugging all 
computer equipment into one unit and 
simply switching the equipment on and 
off in required sequential order 


✓ Provide RF ‘ hash” filtering between 
computer and motorized equipment in 
the computer system, home or office 
to help prevent interference 

^ Eliminates constant plugging and 
unplugging of power cords 


$59.95 


The Spike-Spiker has 8 individually switched 1 20 VAC outlets divided into two rows of separ- 
ate filtered circuits of 4 outlets each, main on/off switch, fuse, and indicator light Prewired and 
ready to use' 

Plug your CPU. interface, etc in one filtered set of 4 outlets and your disks and printer in the 
other set of 4 outlets This allows RF "hash” filtering to help prevent interference between the 
the computer and its peripheral motorized equipment 




® ^222 

ELECTRONICS CO., INC. 


COLONY DR. I.P. 

P.O. BOX 2062 
BETHLEHEM, PA 18001 


OUT OF STATE 
800-523-9685 
215-865-0006 


this publication is 
available in 
microform 



Please send me additional information. 

University Microfilms International 


300 North Zeeb Rd. 
Dept. P.R. 

Ann Arbor, Ml 48106 
U.S.A. 


18 Bedford Row 
Dept. P.R. 

London, WC1R4EJ 
England 


SAVE MORE THAN 20% 

NORTH STAR — INTERTUBE — MICROTEK 
ZENITH — RCA-COSMAC — ITHACA 
THINKER TOYS — GODBOUT — SUPERBRAIN 




The smartest computers at the smartest price 


FACTORY ASSEMBLED & TESTED LIST ONLY 


HORIZON 1 32K DOUBLE DEN 

$2695 $1994 

HORIZON 2 32K DOUBLE DEN 

3095 

2299 

HORIZON 2 32K QUAD DENSITY 

3595 

2699 

HORIZON 2 64K QUAD +HARD DISK 

9329 

7199 

HORIZON MEMORY ASSM 

16K 3B9 32K 

579 

HORIZON MEMORY KIT 

16K 359 32K 

535 

NORTH STAR HARD DISK 18 Mb 

4999 

3939 

PASCAL FOR NORTH STAR ON DISK 

199 

190 

Powerful NORTH STAR BASIC.Jhe Bast 


FREE 

2 NORTH STAR SOFTWARE DISKS wlHORIZON 


FREE 

NSSE 1-22 & P01 TERRIFIC PROGRAMS 

ONLY 

10 

N0RTHW0R0 299 MAILMAN 239 

INF0MAN 

369 

RCA COSMAC VP 111 99 RCA-COSMAC VP-711 

189 

COLOR! RAINBOW 385 CAT 100 1369 

SPECTRUM 

289 

ITHACA FRONT PANEL COMPUTER 64K 

3195 

2695 

Z 8001 CPU CARD 16-bit ITHACA S 100 8Mb 


1179 

ITHACA MEMORY 8/16-bit 64K 

995 

845 

SEATTLE 8086 CPU 16 bit 10 x fatter 


556 

SEATTLE MEMORY 8116 BIT 16K 4Mh i 


356 

SSM KITS Z 80 CPU 221 VIDEO BRD VB3 4Mhz 

412 

MEASUREMENT MEMORY 64K A & T 4mHz 


599 

MEASUREMENT MEMORY 64K BANK SELECT 


789 

EC0N0RAM XIV UNKIT 16K 

299 

254 

CENTRAL DATA 64K RAM 

665 

599 

DISCUS/2D A & T + CPIM 

1199 

975 

THINKER TOYS HARO DISK 26 Mb 

4995 

3995 

DISCUS/2+2 1.2 Mbytes A & T 

1549 

1285 

TARBELL DISK CONTROLLER DO 

495 

445 

TARBELL CASETTE INTERFACE KIT 

120 

109 

SUPERBRAIN 

2995 

2395 

SUPERBRAIN QUAD DENSITY 

3995 

2995 


ZENITH HEATH Z 89 48K 

2895 

2495 

INTERTUBE II SMART TERMINAL 

995 

725 

ZENITH-HEATH SMART TERMINAL 

995 

739 

ZENITH HEATH WH 11 16bit COMPUTER 


2995 

CAT NOVATION MODEM 

179 

169 

MICROTEK PRINTER 

795 

675 

ANADEX PRINTER DP 8000 

995 

865 

ANADEX PRINTER DP 9500 1 

1650 

1389 

NEC PRINTER Fast Typewriter Quality 

2915 

2799 

SECRETARY WORD PROCESSOR The Best! 

85 

77 

TEXTWRITER III Book Writing Program 

125 

112 

G0FAST NORTH STAR BASIC Speeder Upper 

79 

71 

PDS SUPER Z 80 ASSEMBLER & More 

99 

89 

SUPER BASIC DEBUGGER $89 COMPILER 135 

HDS 

40 

EZ 80 MACHINE LANGUAGE TUTOR 25 STATISTICS 

190 

EZ-C00ER Translates English to BASIC 

79 

71 

EC0S0FT FULL ACCOUNTING PKG 

350 

315 

BOX OF DISKETTES 29 IN PLASTIC CASE 


30 

Which Computers are BEST? BROCHURE 


FREE 

North Star Documentation refundable w/HRZ 


20 


ORDER 2 or more COMPUTERS. . . BIGGER DISCOUNTS 
YES WE WILL BEAT OUR COMPETITION S PRICE! 
FACTORY ASSEMBLED & FACTORY WARRANTY 

AMERICAN is 56 

SQUARE COMPUTERS 

KIVETT DR • JAMESTOWN NC 27282 
(919)889-4577 


v* Reader Service index — page 241 


Microcomputing , October 1980 71 




What Is the Utility 
Of a Utility? 


A profusion of information at a low cost, for one. 


Frank J. Derfler , Jr 
PO Box 691 
Herndon , VA 22070 


T he unique data base held by the 
typical home computer user 
could probably be kept as easily in a 
loose-leaf notebook or a stack of 3 x 5 
cards. Each user has disks or cassettes 
full of programs, but they are many of 
the same programs other computer 
users have. The amount of data 
unique to each individual is limited. 

Economically, it makes sense to 
centralize the computing capability in 
one system, which professionals can 
maintain, program and interface. In- 
dividuals can subscribe to the cen- 
tralized system and share both the 
reasonable cost and huge capabilities. 
Businesses and corporations have 
been doing this with time-sharing ser- 
vices for years, but time-shared large 
computer systems have not been eco- 
nomically available to individuals in 
the United States. 

Hobby Systems 

Computer hobbyists solved the 
problem in their own way by estab- 
lishing services using microcomputers 
and one-at-a-time call-in access. 
These are known as Computer Bul- 
letin Board Services, Apple Bulletin 
Board Services or Forum-80. They 
generally provide a public message 
capability, often can transfer pro- 
grams and sometimes allow running 


programs. But they have little or no 
capability for storing individual files. 

Such services fill a big gap between 
home systems and large time-shared 
mainframes, but they do not have the 
storage or the access to large data 
bases unique to big computer utilities. 
Individuals in other countries have 
been using and enjoying the services a 
large computer can provide (see 
“Ultimate Consumer Computer, ” 
Microcomputing , October 1979, p. 
94) . These services are now available 
to you via the telephone and your own 
computer or home terminal. 

The Source 

This system is the biggest and the 
best to arrive on the scene in a long 
time. I will not be too specific about 
the features of The Source, because 
they change so fast. 

An information utility is an entry 
into the public data base in an in- 
teractive mode. This public data base 
includes information you would see in 
the newspapers: stock reports, busi- 
ness news, real estate, classifieds, 
travel, shopping hints and editorials. 
All of this information is sorted and 
cataloged and ready for recall accord- 
ing to your interests. 

The Source provides both the UPI 
and New York Times news services. 
Real estate is a separate category, and 
listings, counseling and various run- 
ning programs are available. The 
classified ads are divided into over 100 
different categories, including an ac- 


tive bulletin board service similar to 
hobby systems. Travel schedules and 
reservations, as well as shopping 
clubs, wine consultation, education 
programs and emergency services, are 
available. 

The New York Times Consumer 
Data Base is a separate service acting 
as a current-events encyclopedia with 
articles on file from the N.Y. Times 
and over 60 other publications. An ex- 
tensive mailbox system allows the 
transmission of private mail between 
individual users. You can review, 
read or send messages at any time. 
You can also store mail and forward it 
to other users. A chat mode is 
available for users who arrange to be 
on the system at the same time. 

The Source operates on a Prime 
computer system, medium-sized 
hardware with about a megabyte of 
main solid-state memory and up to 
295 megabytes of disk space. The 
Prime computer can also be used by 
subscribers to run BASIC and FOR- 
TRAN programs. Many standard pro- 
grams are available, and the user can 
insert any unique programs and 
create files for permanent storage. 

Connection between your home or 
office and The Source in McLean, 
Virginia, is done by dialing from your 
telephone to data transmission car- 
riers, who make use of their own 
transmission facilities and facilities 
leased from other providers. Several 
different carrier systems exist in the 
U.S. 


72 Microcomputing, October 1980 


Carriers connect terminals to com- 
puters and computers to computers 
and provide the equipment to control 
the flow of data. They have some of 
their own microwave links and lease 
channels on microwave, satellite and 
cable systems from other major car- 
riers. They reach their customers 
through the local dial telephone 
systems and a few dedicated lines to 
big users. 

Their activities are regulated by 


period occurs weekdays from 7:00 AM 
to 6:00 PM; the low period occurs any 
other time. The high- time cost is $15 
per hour, and the low-period cost is 
$4.25 per hour for most services. Ad- 
ditionally, if you store data, you will 
pay 3.3 cents per 2048-character 
block per day. 

The one area in which The Source 
could stand improvement is written 
documentation and explanation. The 
billing scheme is poorly explained. 


You can buy a lot of five-dollar hours for all 
of the money you might spend on disk drives, 
memory and languages. 


the FCC, ICC and Congress. They 
threaten and are being threatened by 
the post office and more traditional 
carriers. Despite this, they still 
manage to make a buck while pro- 
viding more inexpensive service than 
the normal long-distance rate. 

Telenet and Tymnet are two of 
these systems used by The Source. 
These services have over 300 entry 
points across the country. If you are 
near an entry point, you will have no 
long-distance toll charges. 

When I lived in Montgomery, 
Alabama, the two nearest entry 
points were Birmingham and Atlan- 
ta. Birmingham was closer, but a call 
to Atlanta was less expensive because 
of the interstate rate structure. I had 
to pay for a long-distance call to 
Atlanta to use The Source, but the 
transmission from Atlanta to Virginia 
was paid for out of my user fee. I have 
been assured that data transmission 
services are going to mushroom in 
1980. 

A user needs a terminal and 
modem. The terminal can be a print- 
er or a CRT. If it can save the infor- 
mation it receives for playback, re- 
transmission or manipulation, it is a 
smart terminal. Smart or dumb ter- 
minals can be used on computer utili- 
ties. The modem connects the termi- 
nal to the phone line. The Bell 103/ 
originate modem at 300 baud is the 
standard for the services most of us are 
interested in. 

This service is not free. Each user 
pays a one-time connect charge of 
$100. Billing for computer and 
transmission service time is divided 
into low and high periods. The high 


High/low billing times are deter- 
mined by recorded home address, 
regardless of where you are calling 
from. 

Some services are never billed at 
the low rate. The management pro- 
vides a loose-leaf binder with intro- 
ductory information, but you have to 
spend several hours of serious study 
before you understand the services. 

I am sympathetic to the difficulty 
involved in providing published docu- 
mentation on a system evolving so 
quickly, but it certainly could be 
more descriptive. There are several 
different commands used to exit from 
specific services. If you don’t use the 
correct command, you may not get 
out until you hang up the phone. 
Don’t hang up without signing 
“OFF,” or you may be billed for extra 
time. 

The documentation is a small hur- 
dle easily overcome with experience. 

Other minor irritants are (1) the 
system sometimes crashes and leaves 
you hanging and (2) the system is 
often busy, particularly between 6 PM 
and 11 PM. I understand that com- 
puter expansion is coming, so both of 
these situations, common to many 
systems, should be improved. 

The Source is a tremendous system 
with features previously seen only in 
dedicated military and educational 
networks. Its potential for growth is 
enormous, and I do not doubt that 
services such as this will be accessed in 
some form from the majority of the 
homes in the U.S. within seven years 

MicroNet 

MicroNet is growing so quickly that 


it is almost impossible to write about 
in a paper-and-print publication. It is 
a purer computer utility as contrasted 
to the information utility The Source 
claims to be. MicroNet, which is 
heavily targeting micro users, is a big 
time-sharing system used by many 
large government agencies and com- 
mercial corporations. It features resi- 
dent software routines tailored for 
Apple and TRS-80 users. It does not 
provide the large public data base 
available through The Source, but it 
is less expensive to join. It has begun 
operation of a bulletin board message 
service and stock quotation service. 

From my experience, I feel that 
MicroNet is more reliable than The 
Source. If you are mainly interested in 
programs and computing, MicroNet 
is a bargain. A one-time charge of $9 
and an off-hour rate of $5 per hour 
allows you to use a tremendously 
powerful concentration of 15 main- 
frame computers running at least 
eight programming languages and a 
large menu of utility programs. You 
have to ask yourself why you would 
struggle to put together an extensive 
home computer system when that 
much power is available economical- 
ly. You can buy a lot of five-dollar 
hours for all of the money you might 
spend on disk drives, memory and 
languages. 

Each person must analyze his own 
interests and needs and buy accord- 
ingly. The spectrum from the 4K 
breadboard micro to the cluster of 
large mainframes has room for every 
system and user. Utilities such as 
Source and MicroNet add to the flex- 
ibility available to the hobbyist and 
small businessman. The expansion of 
these utilities and the carriers they use 
will bring an ever-increasing amount 
of power to the small user. If you 
decide to tap The Source, send a 
message to me at TCB967. 

For information on The Source, 
contact Source Telecomputing Corp. 
(STC), 1616 Anderson Road, 
McLean, VA 22102. 

For information on MicroNet, con- 
tact Personal Computing Division, 
CompuServe, Incorporated, 5000 Ar- 
lington Centre Blvd., Columbus, OH 
43220. ■ 


In mid-May, The Source issued a new 
Users* Manual and Master Index which 
provided much better explanations and 
was easier to follow than the old manual. 


Microcomputing, October 1980 73 



THE ROBB REPORT 


THE ROBB REPORT, published monthly, is the market place for the buyer, seller and 
trader who appreciates the finer things in life. Listed for sale are hundreds of new and previously 
owned antique and classic motor cars, yachts, airplanes, premium properties horses, art, 
firearms and antique treasures. Complete descriptions and photographs are included, as well as the 

owner’s name, address and telephone number. 

A 12 month subscription to THE ROBB REPORT is $45.00*. Send your check to 
the address below, or you may charge your subscription to Visa, Master Card, 

American Express or Diners Club by calling 404-256-9470 and giving your card account 

number and expiration date. 


THE MAGAZINE FOR CONNOISSEURS 


THE ROBB REPORT/ PO. Box 720317 -TF /Atlanta, Georgia 30328 

*Add $30.00 for overseas subscription. Prices subject to change without notice. 


Darkroom Computerist 


Focus in on a “picture perfect” way to use your SWTP. 


Marc I. Leavey, M.D. 
4006 Winlee Road 
Randallstown MD 21133 


I believe quite a few “computerphiles” are interested in pho- 
tography. Ask a few of your friends, and I bet you uncover 
someone with a closet darkroom. Listen to his gripes. 

What irritates me is making a test exposure each time I 
change enlargement ratios, and setting up title slides for the 
numerous slide presentations I give. This article contains 
programs that make both these problems vanish. 

The Enlarger 

Fig. 1 is a diagrammatic representation of a common pho- 
tographic enlarger. The negative is placed in a carrier in the 
head, and a light source projects the image onto the ea- 
sel — kind of like a vertical slide projector. On the easel is a 
piece of photographic paper, with a light-sensitive coating 
that reacts to the image to produce a print, obtainable after 
immersing that paper in a series of chemical baths. 

The size of the image is regulated by the height of the head 
on the column, and the focal length of the lens. If you as- 
sume a constant lens, move the head up and the image gets 
larger, down and the image size decreases. However, the 
time the paper must be exposed is a function of the amount 
of light falling on it. Remember the inverse-square law? The 
light on that easel varies as the square of the height. Add to 
that the iris, a variable aperture that regulates the amount of 
light the head puts out in the first place, and you can see how 
things can become complicated. 

An Example 

You finish making several 4x6 prints of the kids, then de- 
cide to shoot for an 8 x 10. So you raise the enlarger head, 
cropping a little until it looks “right,” and make a test ex- 
posure. From that test you derive the new exposure values, 
set them up and make that big print. A knock on the door in- 
troduces your spouse, who wants “just a few wallet-sized for 
my folks.” You crank the head way down. “Gee, that’s 


bright!” Inverse-square law, you know. Maybe one or two test 
exposures later, some finished “wallets.” 

Why the fuss? Because each of those test prints costs you 
time and money . . . maybe not much if you are working in 
black and white, but color costs lottabucks! The pros realize 
this, and there are gizmos costing hundreds of dollars into 
which you program data on an “ideal print,” that is, one you 
consider perfect. A probe reads the light on the easel and 
directs you or the enlarger to set the correct time and aper- 
ture to produce a perfect print. 

Another Way 

Using that old inverse-square law, there is another way to 
do it. If you have data on a “perfect” print, expressed as 
height of enlarger head above the easel (Ho) and time of ex- 
posure (Tq), the formula: 



Fig. 1. Photographic enlarger. 


Microcomputing, October 1980 75 


0010 REM EXPOSURE TABLE PROGRAM 

0020 REM 

0030 REM VER 2.0 — II APR 19 79 
0040 REM MARC X. LEAVER M* D* 

0050 REM 

0060 REM SET LINE LENGTH TO FULL WIDTH 
007 0 REM AND DIGITS TO FLOATING POINT 
0080 LINE 3 OtDIGITS-O 
009 0 REM BASE* 0 ALLOWS SUBSCRIPT OF 0 
0100 REM AS IN F( 0> 

0110 BASE* 0 

0120 REM READ IN F-STOPS 
0130 FOR I«0 TO 5 
0140 READ FCI) 

0150 NEXT I 

0160 DATA 4# 5. 6*8* 11/ 16*22 
0170 HOME 

020 0 INPUT "WHAT KIND OF PAPER"* PS 
0210 PRINT "FOR A GOOD PRINT* WHAT IS:" 
0220 INPUT "ENLARGER HEIGHT"* S 

02 3 0 INPUT "UNITS CIN OR CM]"*SS 
0240 IF SS«"IN" GOTO 260 

0250 IF S$<>"CM" GOTO 230 

0260 INPUT "EXPOSURE TIME CSEC)"*T 

0270 INPUT "F-STOP"*F 

0280 LET K>-1 

029 0 FOR 1*0 TO 5 

03 0 0 IF F«F(i) THEN K*2tl 
0310 NEXT I 

0320 IF K> - 1 GOTO 400 

0330 PRINT "F-STOPS ON LENS ARE:" 

0340 FOR 1*0 TO 5 
0350 PRINT FCI) 

0360 NEXT I 
0370 GOTO 270 

0400 PRINT "ENTER TABLE DELIMITERS:" 

OftlO INPUT "MINIMUM ENLARGER HEI GHT"* M 1 
0420 INPUT "MAXIMUM ENLARGER HEX GHT"* M2 
0430 INPUT "INCREMENT OF HEIGHTS"*! 

0440 INPUT "PRINT TABLE ON WHICH PORT"*P 
0500 PRINT *P 

0510 PRINT #P* TABCC30-LENC PS))/ 2); PS 
052 0 PRINT #P* TABC < 30-LENCPS) ) / 2) > 

0530 FOR J«1 TO LENCPS) 

0540 PRINT #P*"-"; 

0550 NEXT J 

0560 PRINT IP 

0570 PRINT # P 

0580 PRINT #P*SSi 

059 0 FOR J-0 TO 5 

0600 PRINT #P*TAB<5+5*J);F(J>; 

0610 NEXT J 
0620 PRINT #P 

063 0 FOR D*M 1 TO M2 STEP I 
0640 PRINT #P*D; 

0650 FOR N«0 TO 5 

0660 LET Q*C<<CD/S)»2)*T)/K>*C2tN) 

0670 IF Q< 2 GOTO 710 

0680 IF Q>99 GOTO 710 

0690 PRINT #P* TABC 5* 5*N) * INTC Q+ * 5) J 

0700 GOTO 720 

0710 PRINT #P* TABC 5* 5*N) * 

0720 NEXT N 

0730 PRINT *P 

0740 NEXT D 

0750 SKIP #P* 50- D 

0760 INPUT "ANOTHER TABLE"* AS 

0770 IF LEFTSCAS* 1)*"Y" GOTO 200 

0999 END 

Program 1. 



calculates the new time of exposure at the new height, if the 
same aperture is used. 

Aperture is measured in f-stops, a logarithmic expression 
of how much light the enlarger is putting out. By reducing the 
expression to a common f-stop, you can produce factors that 


tHAT KIND OF PAPER ? POLYCONTRAST - NO FILTER 
For a GOOD PRINT* WHAT I S« 

ENLARGER HEIGHT 7 20 
INI TS CIN OR CM] 7 IN 
ECPO SURE TIME C SEC) 7 14 
F-STOP 7 8 

INTER TABLE DELIMITERS: 

MINIMUM ENLARGER HEIGHT 7 6 
MAXIMUM ENLARGER HEIGHT 7 35 
INCREMENT OF HEIGHTS 7 1 
FRINT TABLE ON WHICH PORT 7 3 


POLY CONTRAST - NO FILTER 


IN 

4 

5.6 

8 

1 1 

16 

22 

6 

-- 

-- 

-- 

3 

5 

10 

7 




3 

7 

14 

8 

-- 

-- 

2 

4 

9 

18 

9 

-- 

— 

3 

6 

1 1 

23 

10 

-- 

-- 

4 

7 

14 

28 

11 

— 

2 

4 

8 

17 

34 

12 

-- 

3 

5 

10 

20 

40 

13 


3 

6 

12 

24 

47 

14 

-- 

3 

7 

14 

27 

55 

15 

-- 

4 

8 

16 

32 

63 

16 

2 

4 

9 

18 

36 

72 

17 

3 

5 

10 

20 

40 

8 1 

18 

3 

6 

1 1 

23 

45 

91 

19 

3 

6 

13 

25 

51 

-- 

20 

4 

7 

14 

28 

56 

-- 

21 

4 

8 

15 

31 

62 

-- 

22 

4 

8 

17 

34 

68 

-- 

23 

5 

9 

19 

37 

74 

-- 

24 

5 

10 

20 

40 

81 

-- 

25 

5 

1 1 

22 

44 

88 

-- 

26 

6 

12 

24 

47 

95 

-- 

27 

6 

13 

26 

51 

-- 

-- 

28 

7 

14 

27 

55 

-• 

-- 

29 

7 

15 

29 

59 



30 

8 

16 

32 

63 

-- 


31 

8 

17 

34 

67 

-- 

-- 

32 

9 

18 

36 

72 

-• 

- - 

33 

10 

19 

38 

76 

-- 

-- 

34 

10 

20 

40 

81 

-- 

-- 

35 

1 1 

21 

43 

86 

-• 

-- 


Sample run 1. 


allow calculation of correct time at any possible opening. 

Integrating this idea into a workable scheme results in 
Program 1, written in SWTP BASIC. The program first speci- 
fies the type of paper used, as different photographic emul- 
sions have different characteristics. Enter the data for a cor- 
rect print: enlarger height, time for exposure and f-stop. 

After requesting delimiters for a table, the program calcu- 
lates the exposure time for the range of specified heights, at 
all available f-stops. Sample resultant tables for two dif- 
ferent emulsions are shown in Sample runs 1 and 2. Different 
types of paper — one black and white, one color — illustrate 
the different requirements varied emulsions produce. 

Note that times greater than 99 seconds or less than two 
seconds are not printed; a dash is inserted instead. This is in 
deference to most timers on the market today. Also, while 
printed times are rounded off to the nearest whole second, 
the actual values are used in calculations to maintain ac- 
curacy. 

How to Use This Program 

Make a good exposure of an average negative. Feed the re- 
quested data into the computer, then take the table printed 
out to the darkroom. When you change enlargement ratios, 
simply measure the enlarger height and read the appropriate 
exposure time and f-stop off the table. An accurate, program- 


76 Microcomputing, October 1980 


44 WAYS TO INCREASE YOUR COMPUTER FREE TRI AL°ALL BOOKsTo^l/u A RANTEED. 

& iJI onnnnnp CCCHD UhlfWkI liniAII You must be satisfied or return the books and 

IVIIURUrKUbllooUK RllUn-nUff! we ll cancel the invoice. 



1001 


PERSONAL COMPUTER 



TROUBUESHOOTING 
MICROPROCESSORS 
li DIGITAL LOGIC 



1205-PASCAL A program- 
mer's guide to using Pascal, 
Tiny Pascal and Supersoft Tiny 
Pascal . . . including actual 
programs and helpful exercises! 
You II find out how to put to- 
gether complete READ and 
WRITE programs, and use re- 
petitive (looping) statements. 
Use them in writing and using 
subroutines, in playing games, 
etc. 350 p., 106 ii. Only *15.95 
h ; *10.95 p. 


1160-1001 Things To Do With 
Your Personal Computer Over 
1,000 time-saving, money- 
saving, effort-saving and just- 
plain-fun applications— with 
actual programs, printouts, 
flowcharts, diagrams and illust- 
rations to help you put these 
applications right to work. Al- 
most 100 games (including 
pool). 336 p., 100 il. Only 
*12.95 h ; *8.95 p 


1203-Handbook of Micro- 
processor Applications How to 

use microprocessors in a variety 
of applications, including inter- 
facing and using machine lan- 
guage programming! Details 
every phase of logic and 
machine decisions. This book is 
completely practical . . . while it 
contains some theory, its main 
focus is on the how-to of using 
microprocessor chips. 308 p., 
94 il. Only *14.95 h; *9.95 p. 


1183— Troubleshooting Mi- 
croprocessors & Digital Logic 

A complete guide to modern 
microprocessor/microcomputer 
troubleshooting and servicing 
that shows you how to do it all 
... how to understand and trou - 
bleshoot digital/logic and mi- 
croprocessor circuits, how to dig 
into their operating systems, 
and how to locate and repair 
, 229 il. Only 


problems. 308 

*12.95 h; *8. 


h. 


1045 — Programmer’s Guide 
To Lisp A step-by-step, easy- 
learn guide to understanding 
and using LISP the popular lan- 
guage of artificial intelligence. 
Includes many actual programs 
and routines and offers a 
simplified method of learning 
the best-known artificial intelli- 
gence language. Shows how to 
write complete LbP programs. 
210 p., 117 ii. Only *9.95 h; 
*5.95 p. 


1062— The A To 2 Book of I 
Computer Games Here are 26 ■ 
exciting and instructive game ? 
programs— all tested and ready | 
to run, and designed to illus- ■ 
trate the fine points of computer ■ 
programming! Each of these ■ 
sophisticated programs in- J 
eludes full documentation on| 
how the game works, what the Z 
program contains, plus valu- 1 
able programming gems. 308 ■ 
p., 73 il. Only *12.95 h; *8.95 p. ■ 


1169— The Giant Handbook of Computer Projects. This MAMMOTH 504-page 
step-by-step guide to building modern computers and accessories — CPUs, 
memories, . I/O hardware, etc.— is a builder’s dream, with projects and 
schematics, parts lists, and step-by-step construction instructions to 
enable you to build your own systems. 504 p., 217 il. only *1 5.95 h; *9.95 p 
1053— Microprocessor Cookbook A chip-by-chip comparison of the most 
popular modern microprocessors— including programming, architecture, 
addressing, instruction sets, and applications! 266 p.. 124 il. only *10.95 
h : *6.95 p 

1111— How to Design, Build & Program Your Own Working Computer 
System. This 2-in- 1 volume combines both hardware and software so you 
can homebrew your own customized eomputer system complete from power 
supply to terminals ... at one-third the cost of an equi *alent commercial 
unit! 308 p., 138 il. only *14.95 h; *9.95 p 
1088 —Illustrated Dictionary of Microcomputer Terminology Here are clear, 
concise, encyclopedic definitions of nearly 4.000 computer terms, “buzz'' 
words, and jargon currently being used in the exploding new field of 
microcomputers, But it's more than just a dictionary— it's a thorough 
update on what’s happening in computers and related peripheral systems. 
322 p.. 150 il only *12.95 h : *7.95 p 
1076— Artificial Intelligence An exciting, thought provoking guide to the 
sophisticated techniques used to make machines "think." It carefully 
defines artificial intelligence, ©(plains the theory behind advanced compu 
ter programming, and shows you how to program your computer to assume 
rudiments of humanlike intelligence. 252 p„ 1 18 il only *12.95 h; *7.95 p. 
1201 —The Complete Microcomputer Systems Handbook. A complete guide 
to microcomputers— how they operate, how to use them, how to program 
them, and how to troubleshoot and repair them . . . plus data on applica- 
tions and the latest state-of-the-art concepts like magnetic bubble 
memories, computers in networks, teaching machines to learn, etc. 322 p. 
147 it. only *15.95 h; *9.95 

1055 — TMe Basic Cookbook A step- by step guide to writing and using 
micro- and mini-computer programs tor everyday household, pastime, and 
business applications. Shows how to understand BASIC and write instruc- 
tions, enter them into the computer, and interpret results. 140 p.. 49 il. only 
*7.95 h, *4.95 p 

071 —The Complete Handbook Of Robotics How to design and build ANY 
kind of robot . . . including ones with microprocessor “brains "—PLUS how 
to interface robots with computers! It's a single sourcebook that contains 
all the techniques you’ll need for creating, designing, building, and operat- 
ing your own robot. 364 p., 137 il only *12.95 h; *7.95 p 
066 — The Illustrated Dictionary Of Electronics Complete, modern defim 
tions for well over 20.000 electronics/computer terms! It’s an all-inclusive 
dictionary of technical terms that is up-to-date, well-organized and con- 
cise. and designed to convey a clear meaning to any term. 882 p , 472 il 
only *19.95 h ; *14.95 p 

077 — Handbook Of Remote Control And Automation Techniques A com- 
plete guide to the application of electronic techniques to the solution of an> 
remote control problem. Shows how to interface a minicomputer to contro 
household devices 294 p.. 250 il only *12.95 h; *7.95 p 
099 — How To Build Your Own Working 16-Bit Microcomputer A step-by 
step description of how to construct a working 16-bit microcomputer, using 
the 9900 CPU microprocessor. Covers every type of interface required, and 
how to use it. 96 p., 73 il. only *3.95 p. 

107 — Computerist's Handy Manual Brings together a wealth of data 
techniques and useful suggestions. Details all the facts needed to make a 
decision about bulk memory, keyboards, displays, hard-copy printers, etc. 
64 p.. 39 il only *2.95 n 

1 141 — How To Build Your Own Working Robot Pet. An incredible book that 
shows you how to construct your own microprocessor-based robot and 
program it — with full details on building an ultrasonic sonar distance 
measuring navigation system (Soniscan). a hearing method (Excom). a way 
of talking (Audigen). and an understandable language and grammar 
(Fredian). 238 p , 96 il. only *10.95 h ; *6.95 p 
095— Programs in BASIC For Electronic Engineers, Technicians & Ex 
perimenters. A broad range of problem-solving programs in computer 
BASIC, including BETA Distribution. Chebyshev High-Pass and Low-Pass 
Designers. Fourier Analysis. Op-Amp circuits, etc. 140 p.. 26 il. only *8.95 h. 
*4.95 p 

225— Master Handbook Of Electronic Tables 4 Formulas -3rd Edition A 

complete electronics reference library in a single volume— instant info 
including charts and diagrams, for everyone in electronics! Contains data 
that will help you solve any problem or design any circuit! 322 p.,96 il. only 
*14.95 h; *9.95 p 


1206— How To Design and Build Audio Amplifiers, including Digital 
Circuits— 2nd Edition A complete course in designing and building 
audio circuits for ALL electronics applications! Plenty of specialized infor- 
mation included. 350 p., 249 il. only *15.95 h; *9.95 p. 

1136— Practical Electronics Matb. A comprehensive problem-and-solution 
study guide and reference on electronics math and theory (with actual 
worked-out examples) that covers ALL the concepts used in electronics, 
communications, electricity, etc! 504 p.. 276 il.only *15.95 h; *10.95 p 
905— Build-lt Book Of Digital Electronic Timepieces A data-packed guide 
to building every timekeeping device you can imagine— rugged shipboard 


clocks, second-splitting digital 1C chronometers, decorator digital clocks, a y 0 1 2 — How To Design fc Build Electronic Instrumentation. Shows how to* 

nrA/>.x.nn * ■ m Ar a 4rOAiiOnZ>u nfinnH molar A tiHo onH mAAn TIArk JUA rs , • .. . , ■ 

design special circuits or adapt existing ones to perform a host of functions* 


precision timer, a frequency period meter, a tide and moon clock. 294 p. 
209 il. only *9.95 h ; *6.95 p 

1199— The Master 1C Cookbook Use-it-now" info on every |C family and 
function— CMOS and TTL 4000- and 7400-series digital iCs.exotic CMOS, 
and linear ICs! It’s a ONE-STOP SOURCE of descriptions, pinouts and 
maximum ratings fora// classifications of ICs. 476 p, 707 il only *15.95 h; 
*10. 95 p. 

960— 1C Function Locator. A versatile new four-way. six-section cross 
reference index that lets you classify and identify thousands of different |Cs 
made by 40 manufacturers, so you can easily select the right 1C for a 
specific job, or quickly determine an iC's function. 224 p.. 28 il. only $8.95 
h; *5.95 p 

1241— How To Build Youi Own Self-Programming Robot. Complete over 
the- shoulder instructions on how to use the 8085 microprocessor to build 
Rodney Robot, a robot capable of thinking and learning. It's a straightfor- 
ward how-to introduction to the sophisticated subject of robotics and 
machine intelligence. 239 p„ 103 il. only *12.95 h; *8.95 p 

1085—24 Tested, Ready-To-Run Game Programs In Basic A challenging 
collection of fun and game programs in BASIC . . . with detailed program 
descriptions, sample printouts, and complete flowcharts, with adaptations 
for the TRS-80 and PET* home computers! 24 different mind-testing 
games. 266 p., 32 il. only *9.95 h; *6.95 p 
is— Modern Digital Communications. A comprehensive guide to using 
understanding, and troubleshooting modern digital communications sys- 
tems . . . all the theory, all the terminology, all the troubleshooting and 
testing data, all the facts about the latest hardware and techniques from 
the elementary setup to multiplexers! 308 p , 122 il. only *10.95 h; *6.95 p. 

780 — 111 Digital & Linear 1C Projects. A practical sourcebook of circuits — 
digital and linear— using off-the-shelf components. Complete specs and 
' |C(j — 


1000 — 57 Practical Programs And Games In Basic. 57 of the hardest* 

working, most enjoyable BASIC programs you've ever seen . . . everything* 
from space war games to blackjack, from craps to I Ching. from arithmetic* 
progression to statistical permutations to one-arm bandits! 210 p.. 64 il.* 

only *10.95 h : *7.95 p. 

785— Microprocessor/Microprogramming Handbook. An authoritative* 

practical guide to the construction, operation, programming and applies * 
tions of microprocessors. Covers every aspect— inside and out, and illus-* 
trates microprogramming techniques to build up program loops, sub* 
routines, and handle interrupts from other peripheral devices. 294 p., 176 il* 

only *9.95 h ; *6.95 p. ■ 


from simple amplification to sophisticated sensing. 420 p., 210 il only* 

*14.95 h ; *9.95 p. ■ 


1 101 —How To Design & Build Your Own Custom TV Games. The COMPLETE* 

book— a GIANT 546-page volume— on designing, building, programming.* 
and modifiying all kinds of TV games! It’s a thorough course in game* 
circuitry, with detailed how-to-build-it instructions and complete game* 


schematics. 546 p.. 244 il. only *14.95 h ; *10.95 p. 

984 — CMOS Databook. Everything you need about CMOS— theory, circuits,* 
practical applications! A 100% practical course in CMOS devices— covers* 
everything from CMOS logic operations to basic analog circuits! Ignores the* 
usual math treatment in favor of the day-to-day into used in actual design* 
work. 280 p.. 273 il. only *9.95 h; *6.95 p. ■ 

1142—84 Practical 1C Projects You Can Build. Contains an incredible* 
variety of circuits you can build from low-cost, readily available integrated* 
circuits— from simple voltage regulators to complete radios, hi-fi tone* 
controls, pulse generators, power supplies, electronic rev counter, burglar* 
alarms, calculator, ice warming indicator, motor speed controllers. 140 p * 
113 il. only *8.95 h; *5.95 p 

1050— The Most Popular Subroutines In BASIC. A programmer’s manual to* 
the most useful and versatile BASIC subroutines and how to use them on* 
any floating point BASIC integrator or computer to avoid tedium, economize* 
on computer time, and make your programs run faster. Includes sample* 
runs and fail-safe programs. 182 p., 349 il. only *9.95 h; *5.95 p. ■ 
1 184— The Master Guide To Electronic Circuits. 616 pages and 38 Chapters* 
of working models of circuit actions in diagram form, plus a look inside* 
components, let you track electron currents and see what’s actually happen-* 
ing inside electronic circuits! It’s 5-complete-books-in-l. 616 p.. 302 il* 
only *19.95 h; *14.95 p ■ 


10-DAY FREE TRIAL— NO RISK COUPON 


clear layout drawings are provided for every 1C (including phase-locked loop| 

IC's) featured, and detailed applications info including all the values| 

needed to make it work. 210 p„ 275 il. only *8.95 h; *5.95 p. ■ mm 

752 — Computer Programming Handbook. A complete guide to computer* TAB BOOKS IflC., Blue Ridge Summit, Pa. 17214 

programmmg and data processing with scores of worked out examples. An ■ p )ease send me the books indicated belOW. [specify ■ 
extremely comprehensive, informative, and interesting work on digital* .... . . , . . K 

edition desired (p) paper or (h) hard]: 


ig work ( 

computer programming, and data processing in general. 518 p.. 114 i!. only | 
*12.95 h ; *9.95 p 


1015— A Beginner's Guide to Computers & Microprocessors A down-to-M 

earth introduction to understanding, assembling, building, programming.* 
troubleshooting.and operating your own practical small computer system. H 
Theory, programming techniques, hardware, circuitry, applications— every* 


□ I enclose $_ 


Send postpaid 


aspect of the subject. 308 p.. 207 il only *9.95 h; *6.95 p. 
841— Build Your Own Working Robot Complete instructions 


-plans." 


schematics, logic circuits, and wiring diagrams— for building Buster, the* 
most unique pet in the world! Not for novices, Buster is a sophisticated* 
experiment in cybernetics. A learning experience unparalleled in electronic* 
construction. 238 p.. 117 il. only *8.95 h; *5.95 p. 

1070— Digital Interfacing With An Analog World. A GIANT 406-page hand- 1 
book that shows you how to design circuits to interface microprocessors,? 
computers, telephones, and other digital devices with the analog world I 
that shows you how to really put your microcomputer to work. 406 p., 277 il ? 
only *12.95 h; *9. 95 p. 

995— Beginner's Guide To Microprocessors. Everything you need to know tc«| 
get started with microprocessors and personal computers, from the very* 


Book # 


basics to their internal architecture, from programming to interfacing with 
the outside world . . . including how to select your own computer system. 182 1 

p.. 106 il. only *8.95 h; *5.95 p 


874— Master Handbook Of Digital Logic Applications. A powerhouse of* 
applications and design info on the latest digital devices and logic systems ■ 
that covers more than common TTL. CMOS, noise-immune high-threshold* 
logic (HTL). and emitter-coupled logic (ECL), too. 392 p., 308 il. only *12.95 ■ 
h; *8.95 p. 


(We pay freight) 

□ Invoice me on 10-day trial (plus shipping) 

□ Charge my VISA or Master Charge account (plus shipping) mt 
Minimum order *10.00. 

Book # Book ff Book # | 

I 

I 

I 
I 
I 

1 

State Zip | 

I 
I 


Name 

Company. 
Address _ 


. Phone. 


City 

□ VISA □ Master Charge 

Card No. □□□□□□□□□□□□□□a 

Expiration Date Signature. 

Pa. add 6% Sales tax. All orders outside USA 
must add 15% shipping and be prepaid. MC-1080 


v* Reader Service index — page 241 


^25 


Microcomputing, October 1980 77 







WE 
DELIVER! 

Osborne Business 
Software 




\W\ \ 

> v > 
<y b 


Before you buy the programs that your company is going to 
depend on for its accounting, ask the following questions: 


Do I get the source 
code? 

Is it well documented? 
Is it fully supported? 


(Don’t settle for less. 

You cannot make the 
smallest change without it.) 
(The Osborne documen- 
tation is the best.) 

(If not, why not? What are 
they afraid of?) 


The Osborne system is the industry standard accounting 
package, with literally thousands of users. We offer an en- 
hanced version of that package that will run on most systems 
without recompiling. 

CRT INDEPENDENCE. The original programs were 
designed to run on a Hazeltine terminal. To use a different 
CRT, you had to modify and test two modules — and recom- 
pile every program! With the Vandata package, you simply 
pick your CRT from a menu and run. 

FILE/DRIVE MAP. The original package had all data files 
on the same drive as the programs. Ours allows you to 
dynamically specify the drive assigned to each file. In fact, you 
can change the drive assignments whenever you wish, to ac- 
comodate expanded file sizes or new hardware — all without 
recompiling! 

INTEGRATION. The original AR and AP systems had to 
be changed and recompiled to feed journal entries to GL. Our 
installation program eliminates this hassle. It simply asks you if 
you want the systems integrated, and what your special ac- 
count numbers are. 

SPEED. The original programs used a binary search to ac- 
cess the GL account file. We use an enhanced technique that 
greatly cuts down on disk accesses, thus speeding up account 
lookups significantly in the GL, AR and AP systems. 

BUGS. We have corrected a number of bugs in the original 
programs. If you find a bug in our programs, we’ll fix it — and 
send you a $20 reward! Our users are sent bug fixes in source 
form. 

MORE! We have made many minor enhancements, and 
fixed many minor problems. We are committed to the ongoing 
support of our package. Vandata has been an independent 
software supplier for over seven years. Quality and support are 
our way of doing business. 

General Ledger with Cash Journal $95 

Accounts Receivable $95 

Accounts Payable $95 

Payroll with Cost Accounting $95 

• All Four Packages (GL, AR, AP, PR) $295 

Magic Wand (Super Word Processor!!) $345 

Pearl Level III (best prog, tool available) $645 

CBASIC-2 $110 

TRS-80 MOD II CP/M 2.2 (Pickles & Trout) $185 

H89/Z89 CP/M 2.2 (Magnolia inc. h/w mod) $295 

Formats: Std. 8". 5’’ NorthStar DD. TRS-80 MOD II tm. H89/Z89, Superbrain DD. 
Manuals for GL. AR/AP, and PR are not included in price — add $20 per manual 
desired (AR/AP are in one manual). CP/M and CBASIC-2 required to run account- 
ing software. Users must sign licensing agreement. Dealer inquiries invited. 

To order call: (206) 542-8370 

or write: VANDATA ^ 

17541 Stone Avenue North 

Seattle, WA 98133 

VISA/MC Welcome — TRS-80 is a registered tm of Radio Shack, Inc. 


mable timer, such as the one described in 73 Magazine, 
August 1977, pp. 66-71 (“Build a Unique Timer,” WA3AJR), is 
an aid to setting repeatable times for this program. 

A Finishing Touch 

You can use Program 2 to identify slides when you project 
them. This program is set up for a scrolling terminal, with H 
set to the number of characters per line and V set to the 
number of lines. It inputs up to three less than V lines, 
centers them and surrounds them with a border character of 
your choosing. If you don’t want a border, you can use a non- 
printing single character such as CONTROL-G (BELL). A loop 
at the end ties things up until you take a picture of the 
screen. 

I put titles on the screen and shoot them, after thoroughly 
cleaning the screen, with ASA 125 Plus-X at f/1.4, 1/8 second. 
I use a tripod and darken the room to eliminate reflections 
from the screen. The resultant negatives are a black-on-clear 
representation of my white-on-black background display and 
make snazzy title slides. You can mount them in slide 
mounts alone or, with a little creative planning, shoot them 
to sandwich with a color slide, producing a superimposed 
title. ■ 


0010 REM SLIDE TITLE MAKER 

0020 REM - 

0030 REM VER 2.0 - 13 APR 79 
0040 REM MARC !• LEAVEY/ M* D- 
0050 REM 

0060 REM SET LINE LENGTH 
007 0 LINE- 0 

0080 REM "H" - CHARACTER WIDTH OF SCREEN 

009 0 REM ”V” - NUMBER OF LINES ON SCREEN 

0100 LET H-32 

0110 LET V- 1 6 

0120 DIM LS( V) / L( V) 

0130 INPUT ’’BORDER CHARACTER”/ BS 
0140 IF LENC BS) - 1 GOTO 200 

0150 PRINT ’’PLEASE TYPE ONLY ONE CHARACTER” 

0160 GOTO 130 

0200 LET K-0 

0210 FOR N- 1 TO V-3 

0220 PRINT ’’LINE #”;N; 

0230 INPUT L$( N> 

0240 IF LEN(LSCN)) <-H- 5 GOTO 300 

0250 PRINT CHRSC 7)1 "LINE TOO LONG ! ”; CHRSC 7) 

0260 GOTO 220 

0300 IF LSCN>«”#$” THEN N-N-liGOTO 400 
0310 LET L(N)«LEN(LS(N) ) 

0320 IF L(N)>K THEN K-L(N) 

0030 NEXT N 

0400 LET I-K+4 

0410 LET J«<CHM)-I>/2 

042 0 PRINT TABCJ); 

0430 FOR M*1 TO 1 
0440 PRINT B$; 

04 5 0 NEXT M 

0460 PRINT 

0470 FOR M«1 TO N 

043 0 PRINT tabcj); bs; 

0490 PRINT TAB(C<HM>-LCM)>/2>;LS<M>) 

0500 PRINT TABCI+J- l); BS 

0510 NEXT M 

0520 PRINT TABCJ); 

0530 FOR M«1 TO I 
0540 PRINT BSi 
0550 NEXT M 

0560 FOR M» 1 TO V-CN+2) 

0570 PRINT 
0580 NEXT M 

059 0 REM LOOP TO KEEP THINGS BUSY 
0600 GOTO 59 0 

Program 2. 


78 Microcomputing, October 1980 



WHAT KIND OF PAPER ? CIBACHROME 
FOR A GOOD PRINT# WHAT I S* 
BJLARGER HEIGHT ? 21 
WITS CIN OR CM3 ? IN 
EXPOSURE TIME (SEC) ? 10 
F-STOP ? 5 

F- STOPS ON LENS ARE* 

4 

5.6 

8 

11 

16 

22 

F-STOP ? 4 

BJTER TABLE DELIMITERS* 

MINIMUM ENLARGER HEIGHT ? 10 
MAXIMUM ENLARGER HEIGHT ? 24 
INCREMENT OF HEIGHTS ? 1 
FfUNT TABLE ON WHICH PORT ? 3 

CIBACHROME 


IN 

4 

5* 6 

8 

1 1 

16 

22 

10 

2 

5 

t 

18 

36 

73 

11 

3 

5 

1 1 

22 

44 

88 

12 

3 

7 

13 

26 

52 

-- 

13 

4 

8 

15 

31 

61 

-- 

14 

4 

9 

18 

36 

71 

-- 

15 

5 

10 

20 

41 

82 

-- 

16 

6 

12 

23 

46 

93 

-- 

17 

7 

13 

26 

52 

-- 

.. 

18 

7 

15 

29 

59 

-- 

- - 

19 

8 

16 

33 

65 

• • 

-- 

20 

9 

13 

36 

73 

-- 

.. 

21 

10 

20 

40 

80 

-• 

~ - 

22 

1 1 

22 

44 

83 


-- 

23 

12 

24 

48 

96 

.. 

-- 

24 

13 

26 52 

Sample 

run 2. 




What K.. . 1 

BEYOND A SCOTT ADAMS 

ADVENTURE ? 


AUAiiJi 

ODYSSEY 

* ITEMS NOW HAVE 3-D-abi lity 


* 


(Insides, Outsides, etc) 
MULTI-PLAYER - up to 12 
and they can be friend or foe 
A* UNRESTRICTED COMMANDS 
/V up to full paragraphs! 

COMING SOON... 
Bug Vour Dealer ! 


I NTERNATIONAL 

Bo* 3435 * Longwood. Fla 32750 
(305) 862 6917 


BUSINESS PROFESSIONAL GAME 
SOFTWARE FOR APPLE AND TRS-80 


□ HOME FINANCE PAK I: Complete package $49.95 Apple, TRS-80 

□ BUDGET: The heert of s comprehensive home finence system. Allows user to define up to 20 budget 

items. Actual expense input can be by keyboard or by automatic reading of CHECKBOOK II files. Costs are 
automatically sorted and compared with budget. BUDGET produces both monthly actual/budget/variance 
report and a year to date by month summary of actual costs. Color graphics display of expenses. .$24.95 

□ CHECKBOOK II: This extensive program keeps complete records of each check/deposit. Unique check 

entry system allows user to set up common check purpose and recipient categories. Upon entry you select 
from this pre defined menue to minimize keying in a lot of data. Unique names can also be stored for com 
pleteness. Rapid access to check files. Check register display scrolls for ease of review. 40 column print- 
out. Up to 100 checks per month storage. Files accessible by BUDGET program $19.95 

□ SAVINGS: Allows user to keep track of deposits/withdrawals for up to 10 savings accounts. Cpmplete 

records shown via screen or 40 column printer $14.95 

IH CREDIT CARD: Keep control of your cards with this program. Organizes, stores and displays purchases, 

payments and service charges. Screen or 40 column printer display. Up to 10 separate cards $14.95 

□ THE UNIVERSAL COMPUTING MACHINE: $39.95 Apple, TRS-80 

A user programmable computing system structured around a 20 row x 20 column table. User defines row 
and column names and equations forming a unique computing machine. Table elements can be multiplied, 
divided, subtracted or added to any other element. User can define repeated functions common to a row or 
column greatly simplifying table setup. Hundreds of unique computing machines can be defined, used, stored 
and recalled, with or without old data, for later use. Excellent for sales forecasts, engineering design analysis, 
budgets, inventory lists, income statements, production planning, project cost estimates-in short for any 
planning, analysis or reporting problem that can be solved with a table. Unique cursor commands allow you 
to move to any element, change its value and immediately see the effect on other table values. Entire table 
can be printed by machine pages (user-defined 3-5 columns) on a 40 column printer. Transform your com- 
puter into a UNIVERSAL COMPUTING MACHINE. 

□ COLOR CALENDAR: HI-RES color graphics display of your personal calendar. Automatic 

multiple entry of repetitive events. Review at a glance important dates, appointments, anniversaries, birth- 
days, action dates, etc. over a 5 year period. Graphic calendar marks dates. Printer and screen display a 
summary report by month of your full text describing each day's action item or event. Ideal for anyone with 
a busy calendar. . (Apple Only) SI 9.95 

□ BUSINESS SOFTWARE SERIES: Entire package $199.95 Apple, TRS-80 

□ MICROACCOUNTANT: The ideal system for the small cash business. Based on classic T-accounts and 
double-entry bookkeeping, this efficient program records and produces reports on account balances, general 
ledger journals, revenue and expenses. Screen or 40 column printer reports. Handles up to 500 journal 
entries per period, up to 100 accounts. Instructions include a short primer in Financial Accounting. $49.95 

□ UNIVERSAL BUSINESS MACHINE: This program is designed to SIMPLIFY and SAVE TIME for the 
serious businessman who must periodically Analyze, Plan and Estimate. The program was created using our 
Universal Computing Machine and it is programmed to provide the following planning and forecasting tools. 

CASH FLOW ANALYSIS PROFORMA BALANCE SHEET SOURCE AND USE OF FUNDS 
PROFORMA PROFIT & LOSS SALES FORECASTER JOB COST ESTIMATOR 

Price, including documentation and a copy of the base program. Universal Computing Machine $89.95 

□ INVOICE: Throw away your pens. Use the ELECTRONIC INVOICE facsimile displayed on your CRT. 

The program prompts and you fill in the data. Includes 3 address fields (yours, Bill to and Ship to), Invoice 
No., Account No., Order No., Salesman, Terms, Ship Code, FOB Pt. and Date. Up to 10 items per sheet with 
these descriptions: Item No., No. of units. Unit Price, Product Code, Product Description, Total Dollar 
amount per item and invoice total dollar amount. Generates, at your option, hard copy invoices, shipping 
memos, mailing labels, audit copies and disc updates to master A/R files. (48 K) $49.95 

□ BUSINESS CHECK REGISTER: Expanded version of the Checkbook II program. Handles up to 500 checks 

per month with complete record keeping. (48K) $29.95 

□ BUSINESS BUDGET: As described above and companion program to Business Check Reaister. Handles 
500 transactions per month, up to 20 cost categories. Accesses BCR files for actual costs. (48K) . . . $29.95 

□ ELECTRICAL ENGINEERING SERIES: Both programs $1 59.95 Apple 

□ LOGIC SIMULATOR: SAVE TIME AND MONEY. Simulate your digital logic circuits before you build 

them. CMOS, TTL, or whatever, if it's digital logic, this program can handle it. The program is an inter- 
active, menu driven, full-fledged logic simulator capable of simulating the bit-time by bit-time response of a 
logic network to user-specified input patterns. It will handle up to 1000 gates, including NANOS, NORS, IN- 
verters, FLIP-FLOPS, SHIFT REGISTERS. COUNTERS and user defined MACROS. Up to 40 user defined, 
random, or binary input patterns. Simulation results displayed on CRT or printer. Accepts network des- 
criptions from keyboard or from LOGIC DESIGNER for simulation. Specify 1000 gate version (48K re- 
quired) or 500 gate version (32K required) S89.95 

□ LOGIC DESIGNER: Interactive HI RES Graphics program for designing digital logic systems. A menu 

driven series of keyboard commands allows you to draw directly on the screen up to 15 different gate types, 
including 10 gate shape patterns supplied with the program and 5 reserved for user specification. Standard 
patterns supplied are NAND, NOR. INVERTER. EX OR. T FLOP, JK FLOP, O FLOP, RS-FLOP, 4 Bit 
COUNTER and N-BIT SHIFT REGISTER. User interconnects gates just as you would normally draw using 
line graphics commands. Network descriptions for LOGIC SIMULATOR generated simultaneously with the 
CRT diagram being drawn. Drawing is done in pages of up to 20 gates Up to 50 pages (10 per disc) can be 
drawn, saved and recalled. Specify 1000 gate (48K) or 500 gate (32K) system $89.95 

□ MATHEMATICS SERIES: Complete Package $49.95 Apple only 

□ NUMERICAL ANALYSIS: HI RES 2-Oimensional plot of any function. Automatic scaling. At your option, 

the program will plot the function, plot the INTEGRAL, plot the DERIVATIVE, determine the ROOTS, 
find the MAXIMA and MINIMA and list the INTEGRAL VALUE. For 16K $19.95 

□ MATRIX: A general purpose, menu driven program for determininq the INVERSE and DETERMINANT of 

any matrix, as well as the SOLUTION to any set of SIMULTANEOUS LINEAR EQUATIONS. Disk I/O for 
data save. Specify 55 eqn. set (48K) or 35 eqn. (32K) $19.95 

□ 3 0 SURFACE PLOTTER: Explore the ELEGANCE and BEAUTY of MATHEMATICS by creating HI RES 
PLOTS of 3-dimensional surfaces from any 3-variable equation. Oise save and recall routines for plots. Menu 
driven to vary surface parameters. Demos include BLACK HOLE gravitational curvature equations. . $19.95 

□ ACTION ADVENTURE GAMES SERIES: Entire series $29.95 Apple only 

□ RED BARON: Can you outfly the RED BARON? This fast action game simulates a machine-gun DOG 

FIGHT between your WORLD WAR I Bl PLANE and the baron's. You can LOOP. DIVE, BANK or CLIMB 
in any one of 8 directions - and so can the BARON, in HI RES graphics Si 4.95 

□ BATTLE OF MIDWAY: You are in command of the U.S.S. HORNETS' DIVE BOMBER squadron. Your 

targets are the Aircraft carriers, Akagi, Soryu and Kaga. You must fly your way through ZEROS and AA 
FIRE to make your DIVE-BOMB run. In HI RES graphics $14.95 

□ SUB ATTACK: It's April, 1943. The enemy convoy is headed for the CORAL SEA. Your sub, the 

MORAY, has just sighted the CARRIERS and BATTLESHIPS. Easy pickings. But watch out for the OE 
STROYERS they're fast and deadly. In HI RES graphics $14.95 

□ FREE CATALOG -All programs are supplied in disc and run on Apple II w/Qisc& Applesoft ROM Card & 
TRS-80 Level II and require 32K RAM unless otherwise noted. Detailed instructions included. Orders 
shipped within 3 days. Card users include card number. Add $1.50 postage and handling with each order. 

California residents add sales tax. Make checks payable to: 

SPECTRUM SOFTWARE 

DEALER INQUIRIES P.O. BOX 2084 142 CARLOW, SUNN YVALE CA 94087 >inR 
INVITED FOR PHONE OROERS- 408 738 4387 * 



ts* Reader Service index— page 241 


Microcomputing, October 1980 79 



OUR PRICES 
ARE 

TOO LOW 
TO 

ADVERTISE! 

CHECK THEM— CALL TOLL FREE! 

800 - 243-7428 

LOOK WHAT WE OFFER! 


• HAZELTINE 

Terminals 

• CENTRONICS 

Printers 

• LEAR-SIEGLER 

Terminals/ Printers 

• DATAPRODUCTS 

Printers 

• ANNADEX 

Printers 

/ 

BE SMART- 
DON'T BUY 
UNTIL YOU 
CHECK OUR 
PRICES! 


MASTERCHARGE 

VISA COD 

PERSONAL CHECK . 

MONEY ORDER 


ISNNETRONICS 

RESEARCH & DEVELOPMENT, LTD. KB 10 
333 Litchfield Rd.. New Milford, CT 06776 



6800 DEVELOPMENT PAC II 

• 6800 MICRO COMPUTER 

• 48K RAM 

• EROM PROGRAMMER 

• RS-232 INTERFACE 

• CASSETTE INTERFACE 

• MONITOR DEBUG ROM 

• EDITOR/ASSEMBLER 

• 4K INDUSTRIAL BASIC 

• RACK, BACK PLANE, SUPPLY 

• $1895 


WINTEK 


Corp. 


tS 163 


317-742-8428 

1801 South St., Lafayette, IN 47904 


MORE PROVEN CP/M AND 
NORTHSTAR SOFTWARE 
From the Software Review 

SOFTWARE MUSIC SYNTHESIS SYSTEM— From Calif- 
ornia Software, this superb four-voice music synthesizer 
proves that software can do anything that hardware can do 
and do it cheaper. Will run old Proc-Tech Music System 
songs. Available on Northstar Disk, CUTER cassette, and 

most CP/M formats, includes 10 songs $79.95 

OSBORNE S BUSINESS PROGRAMS— The complete set 
(A/R, A/P, G/L, Payroll) is available on most CP/M formats. 

(Documentation separate) $100 

CREATIVE COMPUTING'S ADVENTURE- The real thing! 
Re-written for Northstar BASIC. Requires 48K system. 
Specially licensed from Creative Computing for Software 

Review customers. On Northstar Diskette $29.95 

FASTGAMMON—The definitive Backgammon game for 
memory-mapped video systems. Machine coded for ex- 
treme speed, requires VDM or Flashwriter-type display. 
Supplied on Northstar diskette, CUTER cassette and 

CP/M disk $29.95 

QUIK-REF— Machine coded cross-ref erence/branch trace 
for Northstar BASIC programs. Absolutely the best XREF 

available. Super fast $21.50 

SCAN— Specially licensed to the Software Review, this is the 
patch that all Northstar Users have been buying. Allows 
you to selectively list a program by variable or word! 

A must $27.50 

PALO ALTO TINY BASIC EXTENDED FOR NORTHSTAR— 
Completely l/O’d to Northstar DOS. Includes documented 
(and out of print) source code and instructions $30.00 

Software Review ^ 294 
Order from: 704 Solano Avenue 

Albany, CA 94706 
(415)527-7730 


779 UPPER CASE/lower case 
"Conversion Kit l" 

Expand the capabilities of your 779 line printer to 
include word processing!! Available to all Centronics 
779/TRS 80 Printer I owners is the option of lower 
case and changing slash 0 Zero to standard 0. No etch 
cuts or soldering needed, installs in minutes with a 
screwdriver. No program modification or additional 
interface is required. Price $125.00 

Motor control "conversion kit ir 

FOR ALL CENTRONICS 779/TRS 80 PRINTER I UNE PRINTERS!! 

Our “Conversion Kit ir Motor Controller gives your 779 
the ability to turn the motor on and off automatically. 
Removes the annoying noise of constant run, 
increasing the life span of your 779 / TRS 80 line printer 
moton No soldering, software or hardware changes 
needed, installs easily. Price $95.00 

SAVE! Buy r ervice Technologies “Conversion Kit r 
and "Conversion Kit ll“ together for the single price 
of $199.00 

Also available for the following Centronics printer: 
700, 701, 702, 703, 780 and 781. 


To order; please send check or money order in the 
proper amount to r . rj~ . . ^ 

C Jervlce Jecnnoloqie *, J/m 
32 Nightingale Rd. 

Nashua, N.H. 03062 ^ 208 
1603) 883-5369 


Visa and Master Charge accepted (please include signature, 
expiration date and phone numben. 


Service Technologies will pay all shipping and handling. 



Hardware Debug 
Aid x 



The New Technologies Co. introduces 
their Hardware Debug Aid, an SI 00 board 
that offers the technician or hobbyist an 
inexpensive alternative to a logic 
analyzer when troubleshooting micro- 
computers. The HDA(S100) features the 
ability to provide a pulse to sync an 
oscilloscope on any specific instruction 
or portion of instruction. If the technician 
desires, the address buss may be discon- 
nected so as to sync on any combination 
of up to 17 signals by using jumpers. The 
sync pulse also is used to latch and dis- 
play on LED’s the qualified status of up 
to 8 TTL level signals. Price is $99.95. 

kiNcw Technologies Co. 

T P.O. Box 32 
( I v Streamwood, IL. 60103 

v Tel. (312) 289-4410 


All About 



BASIC-IN-ROM 

Ohio Scientific Microsoft BASIC Ver 1.0 Rev 3.2 
REFERENCE MANUAL 

Complete, Concise, Accurate, Detailed. All 
commands, statements, and functions. Map s. 
USR. Tapes. Bug fixes. Variable tables. 

Source code storage. MONITOR. 

Postpaid $8.95 Send check, or COD 

EDWARD H. CARLSON ^ 259 
3872 RALEIGH DR. 

OKEMOS, Ml 48864 

Dealer Inquiries Welcome 


80 Microcomputing, October 1980 



Professional Business Software 

For The Commodore 32K Microcomputer System 
With 2040 Dual Drive Disk & 2022 Tractor Feed Printer 



General Ledger 

• Holds Up To 300 Accounts. 

• Accepts Up To 3000 
Transactions Per Month. 

• Cash Disbursements Journal, 
Cash Receipts Journal, and 
Petty Cash Journal for 
simplified data entry. 

• Maintains Account Balances 
For Present Month, Present 
Quarter, Present Year, Three 
Previous Quarters, And 
Previous Year. 

• Complete Financial Reports 
Including Trial Balance, 
Balance Sheet, Profit & Loss 
Statement, Cash Receipts 
Journal, Cash Disbursements 
Journal, Petty Cash Journal 
and more. 

• Accepts Postings From 
External Sources Such As 
Accounts Payable, Accounts 
Receivable, Payroll, 

Etc $ 295.00 


Accounts Payable 


• Interactive Data Entry With 
Verified Input And Complete 
Operator Prompting. 

• Automatic Application Of 
Credit And Debit Memos. 

• Maintains Complete Purchase 
Records For Up To 200 
Vendors. 

• Invoice File Accepts Up To 
400 Invoices. 

• Random Access File 
Organization Allows Fast 
Individual Record Updating. 

• Multiple Reports Provide A 
Complete Audit Trail. 

• Check Printing With Full 
Invoice Detail. 

• Full Invoice Aging. 

• Automatic Posting To 
General Ledger . . . $ 195.00 


Accounts Receivable 


• Maintains Invoice File For Up 
To 300 Invoices. 

• Accomodates Full Or Partial 
Invoice Payments. 

• Customer File Maintains 
Purchase Information For Up 
To 1000 Customers. 

• Allows For Automatic 
Progress Billing. 

• Provides For Credit And Debit 
Memos As Well As Invoices. 

• Prints Individualized 
Customer Statements. 

• Interactive Data Entry With 
FullOperator Prompting. 

• Complete Data Input 
Verification And Formating. 

• Automatic Posting To 
General Ledger . . . $ 195.00 


Payroll 


• Maintains Monthly, Quarterly, 
And Yearly Cumulative Totals 
For Each Employee. 

• Payroll Check Printing With 
Full Deduction And Pay Detail. 

• Sixteen Different Reports 
Including W2 And 941 . 

• Interactive Data Entry With 
Easy Correction Of Entry 
Errors. 

• Automatic Data Verification. 

• Complete Job Costing Option 
With Cumulative Totals And 
Overhead Calculations. 

• Random Access File 
Organization For Fast 
Updating Of Individual 
Records. 

• Automatic Posting To 

General Ledger S350.00 


Structured around the time tested and reliability proven 
series of business software systems developed by Osborne 
and Associates, these programs have been designed to fill 
the need of a comprehensive accounting package for the 
new Commodore PET micro computer system. Each program 
can either stand alone, or be integrated with the others in a 
total software system. 

Designed with the first time user in mind, these programs 
lead the operator through step by step, verified data entry. It 
is impossible to ‘crash’ a program due to operator error or 
invalid data input. Design consistency has been maintained 
from program to program to greatly increase operator 
familiarity and confidence. 

Documentation, normally a problem for small systems 
users, is provided by the comprehensive series of Osborne 


and Associates user manuals. These three manuals together 
total over 800 pages of detailed step by step instructions 
written at three levels for DP Department Managers, Data 
Entry Operators, and Programmers. You don’t have to worry 
about getting ‘promises’ instead of documentation because 
the documentation was written before the programs 
were developed. A second set of manuals details any 
changes required during conversion. Each program 
provided on disk with complete documentation. Packaged 
in a handsome three ring binder with pockets and twelve 
monthly dividers for convenient storage of reports. 

See your nearest Commodore dealer for a demonstra- 
tion of this outstanding business software system. 


CMS Software Systems 

51 15 MENEFEE DRIVE • DALLAS. TX 75227 • 214-381-0690 


Reader Service index— page 241 


Microcomputing, October 1980 81 







Start/Exit Routine for CP/M 


This assembly-language utility provides links between CP/M and user programs 
and permits simplified operation of remote terminals. 


Ken Barbier 
Borrego Engineering 
PO Box 1253 

Borrego Springs, CA 92004 


I f you program in assembly language 
under CP/M, you might find that Start/Exit 
routine in this article listing to be a useful 
addition to your program library. While 
basically written to provide orderly linkages 
between CP/M and user programs under 
console control, this program provides 
other convenient features, all in less than 
256 bytes: 

1 . It allows you to quickly copy .COM files 
from disk to disk, even if you have only a 
single disk drive. 

2. It provides an exit from CP/M to your 
built-in ROM monitor, or to other bootstrap 
programs in ROM. 

3. It provides a return to CP/M from user 
programs or from a ROM monitor. 

4. By allowing you to jump between CP/M, 
user programs and the ROM monitor under 
console control, it permits the operation of 
remote terminals without the need for ac- 
cess to the computer’s RESET switch or 
front panel. 

5. It includes a console message output 
subroutine that permits you to embed con- 
sole messages anywhere within your 
assembly-language programs, much like 
BASIC PRINT statements. 

The Start Program 

The source program resides on disk as 
library file START.LIB and should be ap- 
pended at the beginning of any assembly- 
language source program by entering the 
ED statement “RSTART.” When thus used 
as a library file, line 79 should be replaced 
by “ORG 0200H”, so that your user pro- 
gram will now start at location 200 instead 
of 100, where Start must reside at the begin- 
ning of the transient program area. 

82 Microcomputing, October 1980 


When your assembled user program (in- 
cluding Start) that is on the disk as a .COM 
file is called by name, CP/M will load your 
program and jump to Start, which will then 
display the following console message: 

B = TAPE BOOTSTRAP 
C = CP/M RESTART 
M= MONITOR 
R = RUN PROGRAM 
?: 

where ?: is prompting you for one of the four 
single-letter directive choices. If you enter 
the wrong letter, hit the Rubout key before a 
carriage return, and Start will reprompt with 

When the correct choice is entered, 
followed by a carriage return, Start will 
jump to the desired program. If your choice 
is R to run your user program, then that pro- 
gram can return to Start at address 100 
after it has done its thing, allowing you to 
make any of the four choices as before. 

If you have a good monitor program in 
ROM, you might prefer to use it instead of 
CP/M’s DDT to debug your new user pro- 
gram, so you would enter M instead of R. 
When finished with the monitor, it can 
reenter Start at location 1 00 to provide a link 
back to CP/M. 

The Exit Program 

If you assemble this program with line 79 
as an END statement as shown in the 


listing and name the object file EXIT.COM, 
then this same routine can be used as an 
exit from CP/M to your monitor or a tape 
bootstrap program. This is especially 
useful if CP/M is a recent addition to your 
system, and you have mountains of soft- 
ware on cassette tapes. 

I hope that when you ran those cables 
from the computer room to the bedroom (so 
you could play in comfort), you included a 
couple of audio cables so you could take 
your cassette along with you. Now you can 
easily switch between disk programs under 
CP/M and cassette programs at your 
remote terminal without having to get up to 
hit the reset switch. 

A Convenient Message Subroutine 

Start/Exit includes a console message 
subroutine that allows you to place console 
messages anywhere within your program 
and output them to the console with a 
minimum of overhead. For example, you 
can output an error message with this sim- 
ple sequence: 

CALL MSGXP 
DB ‘ERROR!’ 

DB 0DH,0AH,0 

Your message can be any length, and the 
length parameter does not have to be 
passed to MSGXP. Your message text must 
terminate in a zero, and the subroutine will 
return to your calling program at the State- 


Program listing. Start/Exit program in assembly language. 


8 : 

3E09 

= 

Cl 

EQU 

3E09H 

j 

BIOS 'CONIN' 

9) 

3 E0C 

3 

CO 

EQU 

3E0CH 

; 

BIOS 'C0N0UT* 

1 0 s 

3E03 

3 

WB00T 

EQU 

3E03H 

; 

WARM START 

1 1 1 

2900 

3 

STAK 

EQU 

2900H 

; 

TOP OF USEABLE RAM 

12: 

C800 

3 

MONITOR 

EQU 

0C800H 

; 

ROM MONITOR 

1 3 1 

C803 

3 

TB00T 

EQU 

0C803H 

; 

ROM TAPE BOOTSTRAP 

14: 

15: 

16: 

17: 

18: 

0200 

3 

PROGRAM 

EQU 

0200H 

i 

PROGRAM START 

0100 



ORG 

0100H 


; TP A START 

0100 

310029 

START 

LX I 

SP* STAK 


J SETUP STACK 

19: 

0103 

FB 


El 



; ENABLE INTS 

20: 

0104 

CD9101 


CALL 

MSGXP 


; SIGN - ON 

21 : 

0107 

0D0A 


DB 

0DH* 0AH 


; CR* LF 

22: 

0109 

42203D2054 

DB 

'B = TAPE 

BOOTSTRAP' 


23 * 

01 IB 

0D0A 


DB 

0DH* 0AH 



241 

01 ID 

43203D2043 

DB 

*C = CP/M 

RESTART* 

25* 

0 1 2D 

0D0A 


DB 

0DH* 0AH 



26* 

012F 

4D203D204D 

DB 

*M * MONITOR* 


27* 

013A 

0D0A 


DB 

0DH* 0AH 



28* 

013C 

52203D2052 

DB 

*R « RUN 

PROGRAM’ 

29* 

014B 

0D0A00 


DB 

0DH* 0AH * 0 



30* 








31 t 

014E 

CD9101 

STAR0 

CALL 

MSGXP 


; PROMPT INPUT 

32* 

0151 

0D0A 


DB 

0DH*0AH 



33* 

0153 

3F3A20 


DB 

•7 * * 



34* 

0156 

00 


DB 

0 



35* 

36* 

0157 

CD093E 

STAR 1 

CALL 

Cl 


; GET DIRECTIVE 

37* 

015A 

F5 


PUSH 

PSV 


; SAVE I T 

38* 

015B 

4F 


MOV 

C/ A 


; ECHO IT 

39* 

015C 

CD0C3E 


CALL 

CO 



40: 

015F 

CD093E 

STAR2 

CALL 

Cl 


; VAIT FOR CR 

41 * 

0162 

F5 


PUSH 

PSV 



42 t 

0163 

4F 


MOV 

C* A 



43: 

0164 

CD0C3E 


CALL 

CO 



44: 

0167 

FI 


POP 

PSV 



45: 

0168 

FE0D 


CPI 

0DH 


; IS INPUT CR? 

46 : 

016A 

CA7501 


JZ 

STAR3 



47* 

016D 

FEFF 


CPI 

0FFH 


; IS IT RUB0UT? 

48 : 

016F 

CA8D01 


JZ 

STAR4 


; YES* RESTART 

49 * 

0172 

C35F01 


JMP 

STAR2 


; GET NEXT CHAR 

50: 

0175 

FI 

STAR3 

POP 

PSV 


; RESTORE CHAR 

51 * 

0176 

FE42 


CPI 

•B* 


; PROCESS DIREC 

52* 

0178 

CA03C8 


JZ 

TB00T 



53* 

017B 

FE43 


CPI 

*C* 



54* 

017D 

CA033E 


JZ 

VB00T 



55* 

0180 

FE4D 


CPI 

•M * 



56* 

0182 

CA00C8 


JZ 

MONITOR 



57* 

0185 

FE52 


CPI 

'R* 



58* 

0187 

CA0002 


JZ 

PROGRAM 



59* 

018A 

C34E01 


JMP 

STAR0 


; ILLEGAL! 

60* 

0 1 8 D 

FI 

STAR4 

POP 

PSV 


*' KILL DIREC 

61 : 

0 1 8 E 

C34E01 


JMP 

STAR0 


*• GET NEV ONE 

62* 








63* 



* 





64: 



* OUTPUT MESSAGE TO CONSOLE 


65* 



* AND RETURN 

THRU INDEX 


66* 



* 





67* 








68: 

0191 

El 

MSGXP 

POP 

H 

GET 

CALL ADRS + 1 

69* 

0192 

7E 

MSGX1 

MOV 

a* m ; 

GET 

CHARACTER 

70: 

0193 

FE00 


CPI 

0 

TIL 

END OF MESSAGE 

71 * 

0195 

CAA001 


JZ 

MSGEX 

THEN 

1 EXIT 

72* 

0198 

4E 


MOV 

C* m 

CHARACTER TO (C) 

73* 

0199 

CD0C3E 


CALL 

co ; 

OUTPUT CHARACTER 

74: 

0 1 9C 

23 


I NX 

h ; 

AHEAD ONE 

75: 

019D 

C39201 


JMP 

MSGXl ; 

CONTINUE TIL DONE 

76: 

01A0 

23 

MSGEX 

I NX 

H 

AHEAD TO NEXT 

77: 

01A1 

E9 


PCHL 

* 

INSTRUCTION* AND GO! 

78* 








79* 

01A2 



END 





ment immediately following the zero. 

MSGXP uses the A, C and H, L registers, 
so if you need to preserve the contents of 
these registers, you will have to surround 
your CALL and the message text with ap- 
propriate PUSH and POP statements. 

There is quite a bit of program space left 
between the top of Start and the beginning 
of user program space at location 200. You 
can use this room for additional jump op- 
tions. Both the header message text and 
the directive processing in the program 
listing are organized to make it easy to add 
options. 

In any case, it would be a good idea to 
leave the start address of all user programs 
at location 200, even if some space is 
wasted. Then you will always know where 
your program begins. 

Single Drive Disk Copy 

With Start appended to your program, it 
is easy to copy that program onto another 
CP/M disk even with a single drive system. 
When Start prompts with ?: place the 
destination disk in the drive and enter C and 
a carriage return to reboot CP/M from the 
new disk. When CP/M prompts with “A>” 
enter “SAVE x X.COM”, where X is your pro- 
gram name and x is the appropriate size in 
256 byte blocks. 

By rebooting CP/M, you enable writing 
onto the new disk. Your user program re- 
mains undisturbed in memory during the re- 
boot, ready to be saved. 

The absolute addresses in the EQUate 
statements are for a 16K version of CP/M. 
The addresses given for the monitor and 
tape bootstrap programs are for a specific 
hardware system, and you will have to 
change them to the proper entry points for 
your own ROM programs. ■ 


SS- 50 

Computing^ 

• THE OTHER ALL 6800 
COMPUTER MAGAZINE 

Devoted to the 6800-6809 
enthusiast... Software, fixes, 
hardware, reviews and more! 

Charter Subscription 
$12.00-1 Year $22.00-2 Years 
_ _ _ V ! S A _ _ _MC_ 

FREE SAMPLE ISSUE 
(60<f in stamps for 1st Class) 


SS-50 Computing ^ 321 
P.O. Box 402 K 
Logan, Utah 84321 


6800, 8080, 6502 

PROGRAMMERS 
and HARDWARE 
MOONLIGHTERS 

Small, growing, established company 
($600K sales) needs experienced pro- 
grammers and hardware people in the 
Manchester, N.H. area . You will aid our 
development of 6800 based “ black boxes ' * 
that monitor industrial production/ 
manufacturing functions. You will inter- 
face these units to various mini/micro 
computers via RS232 and develop num- 
ber crunching/display programs. Posi- 
tions) could evolve into full time (if 
desired) within 12-18 months. This is a 
unique opportunity for right individual. 

Contact: Karl Ritzinger 
Industrial Marine Electronics Inc. 

61 Harvey Road — RFD #10 *^264 

Manchester, N.H. 03103 
(603) 434-2309 


HIGH SPEED 
16 K MEMORY 

$48,00 

Set of 8 4116 RAM chips, for 
use in Apple, Heath, Pet or 
TRS-80. Add $3.00 for shipping 
& handling (CA residents add 
6% sales tax). 

Visa, Mastercharge orders 
800-538-8559 (outside CA). 

exatron 

181 Commercial Street 
Sunnyvale, CA 94086 

408-737-7111 


v* Reader Service index — page 241 


Microcomputing, October 1980 83 


Modifying the Horizon 
Double Density DOS 


Programming tricks to really personalize your system. 


George L Haller 
1500 Galleon Drive 
Naples , FL 33940 


T he Horizon disk operating system for 
double density is a wonderful collection 
of instructions. But it lacks some of the per- 
sonalized features that would make it even 
better. 

The Modifications 

There are three modifications I think can 
improve the system. 

1. On many occasions, I would like to 
have the video display and the printer work 
at the same time without modifying the BA- 
SIC program. Since the first serial output is 
for the video terminal and the second serial 
output is available for a peripheral, all I 
need is to make them work together in tan- 
dem. I then will have the video displaying 
the output while the output is also being 
printed. 

2. I would like the ability to output the 
desired number of nulls. Some peripherals 
in the serial mode require a certain number 
of nulls after CR/LF. This feature was in- 
cluded as a command in the older North 
Star BASIC, but was eliminated some ver- 
sions ago. 

3. 1 would like to be able to output spaces 
after a CR/LF. This feature is useful when a 
line printer prints too close to the left-hand 
edge of the paper and does not leave 
enough space for binding the pages. It is 
especially convenient for listing where you 
do not have control of the page format. 
The first modification is simple because 


of the output code setup. The first serial 
output is a subroutine starting at 293EH 
with a Return, C9H, at 2948H. This is fol- 
lowed by the second serial output at 2949H 
with a Return at 2953H. All you need to link 
the two outputs is to replace the first Return 
with a NOP, and you will be able to watch 
the video while the printer is working away. 

This is easily done in BASIC by Fill 
10568,0. To return to normal operation use 
Fill 10568,201.201 is the decimal equivalent 
of C9H, which is Return. This is shown in 
Listing 1. 

The second modification, to add nulls, is 
more difficult, since you must key on the 
CR/LF to determine when to add the nulls. 
Actually, you key on the line-feed character. 
Listing 2 shows the necessary changes. 


There is adequate space beginning at 
29BCH to accommodate your new sub pro- 
gram so that at COUT1, 2949H, you will 
jump to the patch named COUT3 with 
C3,BC,29. 

The remainder of the codes in COUT 1 are 
not used. The codes shown in Listing 1 are 
inserted and used. This particular set in- 
serts seven nulls, but this number may be 
changed at 29CCH. 

The third modification, the insertion of 
spaces at the beginning of each line, can be 
assembled similarly. Listing 3 shows a com- 
bination of both nulls and spaces, with 
seven nulls and five spaces. 

These programs are versatile, and If 
residing in DOS, may be changed by the 
BASIC FILL command. 


ITHE FOLLOWING IS A PATCH IN USER'S AREA OF N* 
I HORIZON DOUBLE DENSITY DOS TO ALLOW THE 
IOUTPUT ON TERMINAL I AND TERMINAL 2 IN 
? TANDEM AND CONTINUOUSLY. THIS PATCH IS 
I IS MERELY CHANGING 2948 FROM C9 TO NOP. 

I THIS CAN BE DONE IN BASIC BY FILL 10568,0 
I AND RETURNED TO NORMAL BY FILL 10568,201 


293E 

DB03 

COUO 

IN 

3 

1 INPUT FIRST SERIAL PORT STATUS 

2940 

E60 1 


AN I 

1 

IMASK OUTPUT STATUS BIT 

2942 

CA3E29 


JZ 

COUO 

«LOOP IF NOT READY TO OUTPUT 

2945 

78 


MOV 

A,B 

tMOVE CHARACTER TO A 

2946 

D302 


OUT 

2 

1 OUTPUT THE CHARACTER 

2948 

C9 


RET 


1 CHANGE TO NOP TO OUTPUT 
I TO BOTH SERIAL PORTS 

2949 

DB05 

COUTI 

IN 

5 

I INPUT SECOND SERIAL PORT STATUS 

294B 

E601 


ANI 

1 

IMASK INPUT STATUS BIT 

294D 

CA4929 


JZ 

COUTI 

I LOOP IF NOT READY TO OUTPUT 

2950 

78 


MOV 

A, B 

IMOVE CHARACTER TO A 

2951 

D304 


OUT 

4 

IOUTPUT THE CHARACTER 

2953 

C9 


RET 




Listing 1. Modification to link two outputs. 


84 Microcomputing, October 1980 


10 Input "DEVICE NUMBER", Z 

20 PRINT #Z, “THIS WILL PRINT ON THE SELECTED 

DEVICE” 

30 PRINT “THIS WILL PRINT ON THE VIDEO TER- 
MINAL” 

Table 1. 


If only the null change is made as shown 
in Listing 2, any number of nulls may be in- 
serted in the DOS by FILL 10700, XX, where 
XX is the number of desired nulls in 
decimal. 10700D = 29CCH. 

If the null and space version (Listing 3) is 
in use, then FILL 10700, XX will insert XX 
nulls and FILL 10714, YY will insert YY 
spaces. 

Implementation 

Bring up your DOS and load it at 4000H by 
LF 4000. Then go to the monitor at 0 or 
2D00H. The monitor should be loaded 
where it will not interfere with the operating 
DOS or the loaded DOS. The loaded DOS 
uses 4000 H to 4CFFH. The modifications 


• THE FOLLOWING IS A PATCH IN USER'S AREA OF N* 
•HORIZON DOUBLE DENSITY DOS TO INSERT NULLS AND 
•SPACES AFTER A CR/LF. THIS PATCH IS JUMPED TO BY THE 
ISMALL PATCH FROM THE BEGINNING OF COUTI AT 2949H. 
»01/l 0/80 


2949 

C3BC29 





29BC 

78 

COUT3 

MOV 

A V B 

IPUT CHAR IN REG A 

29BD 

FEOA 


CPI 

OAH 

«IS IT A LF? 

29BF 

CAC529 


JZ 

LNFD 

1 YES 

29C2 

C3E829 


JMP 

OUTPT 

INO 

29C5 

CDE829 

LNFD 

CALL 

OUTPT 

• OUTPUT THE LF CH*R. 

29C8 

C5 


PUSH 

B 

ISAVE C 

29C9 

0600 


MVI 

B*0 

• NULL CHAR. TO B REG. 

29CB 

0E07 


MV I 

C,7 

INO. OF NULLS TO C REG. 

29CD 

OD 

NULLS 

DCR 

C 

IDECR. C REG. 

29CE 

FAD729 


JM 

SPACE 

1 IF ALL DONE W/NULLS 

29DI 

CDE829 


CALL 

OUTPT 

IOUTPUT A NULL 

29D4 

C3CD29 


JMP 

NULLS 

IDO IT AGAIN 

29D7 

0620 

SPACE 

MVI 

C, 5 

ISPACE CHAR. TO B REG. 

29D9 

OE05 


MVI 

C*5 

INO. OF SPACES TO C 

29DB 

OD 

SPACE 1 

DCR 

C 

IDECR. C REG. 

29DC 

FAE529 


JM 

POPI 

1 IF ALL DONE WITH SPACES 

29DF 

CDE829 


CALL 

OUTPT 

IOUTPUT A SPACE 

29E2 

C3DB29 


JMP 

SPACE! 

IDO IT AGAIN 

29E5 

Cl 

POPI 

POP 

B 

•RESTORE C 

29E6 

78 


MOV 

A, B 

IMAKE A-B 

29E7 

C9 


RET 



29E8 

DB05 

OUTPT 

IN 

5 

•FOLLOWING IS A COPY 

29EA 

E60I 


ANI 

1 

•OF THE COUTI CODE 

29EC 

CAE829 


JZ 

OUTPT 


29EF 

78 


MOV 

A, B 


29FO 

D304 


OUT 

4 


29F2 

C9 


RET 




Listing 3 . Modification to insert spaces at the beginning of each line. 


may be inserted into the loaded DOS by us- 
ing the FM or the DS command from the 
monitor. But, while the code will end up in 
the 2900s, it should be loaded into the 4800s 
instead of the 4900s. 

In other words, the first three codes in- 
serted would start at 4848H and would be 
C3,BC,29, and the next inserted codes 
would start at 48BCH and be 78,FE,0A. 
When you have made the modifications, 
use the monitor command OS to get back to 
the operating DOS and then SF DOS 4000, 
which will save your new DOS and let you 
try it. 


One other trick in manipulating the out- 
put to the various terminals is to use the 
output device capability of North Star 
BASIC. You can put a line in the BASIC pro- 
gram requesting the input of the output 
device number, and then use it as needed in 
the program. While this is described in the 
manual, the short program in Table 1 may 
give one an idea of how it works. 

This comes in handy when only part of 
the output is to be printed and the re- 
mainder goes to the video terminal.* 


ITHE FOLLOWING IS A PATCH IN USER'S AREA OF N* 
IHORIZON DOUBLE DENSITY DOS TO INSERT NULLS AFTER 
I A CR/LF. THIS PATCH I S JUMPED TO BY THE SMALL 
IPATCH FROM THE BEGINNING OF COUTI AT 294 9H. 
101/10/80 


2949 

C3BC29 





29BC 

78 

COUT3 

MOV 

A,B 

IPUT CHAR IN REG A 

29BD 

FEOA 


CPI 

OAH 

IIS IT A LF? 

29BF 

CAC529 


JZ 

LNFD 

• YES 

29C2 

C3DA29 


JMP 

OUTPT 

•NO 

29C5 

CDDA29 

LNFD 

CALL 

OUTPT 

• OUTPUT THE LF CHAR. 

29C8 

C5 


PUSH 

B 

ISAVE C 

29C9 

0600 


MVI 

B, 0 

INULL CHAR TO B REG. 

29CB 

OE07 


MVI 

C* 7 

|7 NULLS TO C REG. 

29CD 

OD 

NULLS 

DCR 

C 

• DEC. C REG. 

29CE 

FAD729 


JM 

POPI 

•IF ALL DONE NITH NULLS 






•RESTORE C 

29D1 

CDDA29 


CALL 

OUTPT 

•OUTPUT A NULL 

29D4 

C3CD29 


JMP 

NULLS 

IDO IT AGAIN 

29D7 

Cl 

POPI 

POP 

C 

•RESTORE C 

29D8 

78 


MOV 

A, B 

•MOVE B TO A 

29D9 

C9 


RET 



29DA 

DB05 

OUTPUT 

IN 

5 

• FOLLOWING IS A COPY 

29DC 

E60I 


ANI 

1 

•OF THE COUTI CODE 

29DE 

CADA29 


JZ 

OUTPT 

1 

29EI 

78 


MOV 

A,B 

1 

29E2 

D304 


OUT 

4 

1 

29E4 

C9 


RET 


1 


Listing 2. Modification to add nulls. 


TRS 

80 


• F(ast) F(ourier) T(ransform) 

• Digital Filter Simulation 

• Linear and Exponential Curve Fit 

• Disk or Cassette Data & Results Files 

• Interactive Graphics 

■ Having this set of interactive programs in 
your hands is a learning experience in digital 
signal processing. 

■ Learn by doing. Documentation includes 
multiple examples. Balance yourcheckbook 
with a digital filter (can you believe it?). Plot 
daily stock market values and their comput- 
ed trend lines. Find the frequency response 
of a digital filter. Illustrate Nyquist sampling 
theorem Perform spectral analysis on any 
waveform (FFT). 

■ This sophisticated software, written by a 
professor and consultant in the digital pro- 
cessing field for use in teaching and 
research, is written in basic for ease of user 
understanding and modification. Runs in 
a minimum 16K cassette system having 
expanded capabilities when used with disk 
and printer systems. 

FFT-80 DISK $30.00 

FFT-80 CASSETTE $25.00 



Microcomputing, October 1980 85 




16K MEMORY KITS 
TMS— 4116 ns 


FOR: APPLE, TRS-80, HEATH 

EXPANDORAM I & II AND MANY 
MORE 


72 MONTH GUARANTEE 


PER SET 
OF 8 CHIPS 



®inn)(p)iy)^®(F 
dW0(S@§ 


ADD $2.00 SHIPPING & HANDLING 
PER ORDER 


PAYMENT: MASTER CHARGE, VISA 
CASH, MONEY ORDER, 


^80 


U.P.S., C.O.D., 
PERSONAL CHECKS 
REQUIRE 2-3 WKS. 
TO CLEAR BANK. 


30 Hwy. 321, N.W. 

P. O. Box 2292 

Hickory, N. C 28601 PHONE HOURS: 

(704) 294-1616 

6 P.M. — 9 P.M. EST 


£$ Dysan 

^CORPORATION 


Solve your disk problems, buy 100% surface 
tested Dysan diskettes. All orders shipped from 
stock, within 24 hours. Call toll FREE (800) 
235-4137 for prices and information. Visa and 
Master Card accepted. All orders sent postage 
paid. 



MAYDAY 

The Complete Unlnterruptable Power Supply 




The lights blinked - 

even the slightest power failure 


easy to use - 

just plug your computer into 
MAYDAY.™ 


can ruin a data disk and 
cause loss of the program. 


We honor: 



Protect your time and 
investment - 


for more information contact ... 
£Pim - $nc. 


VISA” 


(Manufacturing high technology products since 1970) 


Box 210 

New Durham, New Hampshire 03855 
(603) 859-7110 


»x152 


86 Microcomputing, October 1980 


DR. DALEY’S BEST Mailing List Is Now Better! 


DR. DALEY has taken his best selling mailing list and made it even better! This version has 
been totally revised to increase the reliability of the files and make it even easier to operate. 
Several new features have been added: 


• Goof-proof input routine. Eliminates the irritating results of accidentally pressing 
some cursor control keys. This is a machine code routine so it is as fast as you are! 
BONUS — Auto repeat on all keys! 

• Interface to allow output of the entire mailing list or virtually ANY subset to WORD- 
PRO III and WORDPRO IV format files so you can use these to generate personal- 
ized form letters. YOU can format the structure of this output! 

• Routines to merge files and to minimize the number of duplicate entries in a file. 

• More machine code routines to speed up processing. 

• In addition you have the same powerful file formatting options where YOU can 
determine the structure of the files. YOU can format your label output with up to 11 
lines per label and from 1 to 8 (yes EIGHT) labels per line. 


This system is completely menu driven. It includes 100 pages of user documentation. This 
documentation is for the end user and is not padded with listings, flow charts, and other such 
extraneous material. 

This program will be available for a short time at the introductory price of $159.95. It is 
available for the 32K PET and CBM 2000, 3000 and 8000 series computers. You can order 
through your dealer or directly from us. We will accept VISA or MASTERCARD or your check 
or money order. Overseas orders include 10% to cover shipping. 


Charge to 
your 
MC/VISA 


DR. DALEY’S Software ^ 

425 Grove Avenue, Berrien Springs, MI 49103 
Phone (616) 471-5514 

Sunday - Thursday noon to 9 p.m., Eastern Time 



is 0 Reader Service index— page 241 


Microcomputing, October 1980 87 




PET Mini Monitor 


This short routine hides in the second cassette buffer 
and makes creating and saving machine-language programs a snap. 


William H. Perdue 
2815 Pulaski Pike 
Huntsville, AL 35810 


I f you have ever tried any real-time graph- 
ics on your PET, you have undoubtedly 
found that BASIC is sometimes too slow. 
Normally, the answer is to use machine-lan- 
guage subroutines that can be linked to 
your main BASIC program through the SYS 
command. 

However, entering the machine code for 
the subroutine into the machine is a clumsy 
and time-consuming operation, even 
though this can be done using BASIC. Ev- 
erything must be converted from hexadeci- 
mal to decimal and then poked into the 
proper memory locations. Another draw- 
back occurs when you have to locate and 
correct errors, or make changes, in your ma- 
chine-language routines. Again, it is possi- 
ble to do this using BASIC, but not very effi- 
ciently. 

Another drawback becomes apparent af- 
ter you get your program written, entered in- 
to the machine, with everything working 
correctly together, and then you try to save 
it on tape. The normal SAVE operation will 
only save the program that is written in 
BASIC, and the machine-language routines 
are ignored. The only way around this is to 
rewrite the entire program, putting the ma- 
chine code into DATA statements and in- 
cluding a routine to read and poke the data 
into the necessary memory locations. Al- 
though this will now allow you to save the 
complete program in BASIC, it does use up 


a considerable amount of memory. 

You can deal with all of these drawbacks 
using BASIC, although inconveniently, but 
there is a better way. This article describes 
a machine-language monitor program that 
allows you to read and write memory direct- 
ly in hexadecimal form. This eliminates the 
need to convert from hexadecimal to deci- 
mal for entry, thereby reducing the possibil- 
ity of errors. You can write, enter and check 
your programs in hex, which simplifies the 
task of machine-language programming. 
Most important is the ability to save the pro- 
gram once you have it written and checked 
out. 

Machine-language monitor programs are 
not new; there is an excellent monitor pro- 
gram available for the PET that does all of 
the things I have covered and more. How- 
ever, the program did not meet my particu- 
lar needs. It required about 875 bytes of 
user RAM, which I was not willing to give up 
just for the convenience of writing machine- 
language code. 

I needed a short and simple program that 
would do the job without using my BASIC 
text memory. Since I don’t have a second 
cassette unit on my PET, I have 198 bytes of 
memory available at the end of page two of 
memory. With this in mind, I developed the 
PET Mini Monitor. 

Program Description 

Mini Monitor is a machine-language pro- 
gram that resides in the second tape buffer. 
Operation of the program is similar to the 
KIM operating system. The program allows 
the user to open and display all memory ad- 
dresses, modify data in RAM-type memory 
and save programs on tape from any point 
in memory. The program does not affect the 
normal BASIC interpreter operating sys- 


tem. This allows the user to access one— 
either the Mini Monitor or the BASIC inter- 
preter operating system— without having 
any detrimental effect on the other. 

Instructions 

First, you must enter the program into 
your machine. If you have the PET TIM pro- 
gram, you can use it to enter the machine 
code from the listing; otherwise, use the 
BASIC program in Listing 1. Carefully type 
in the program and check the DATA state- 
ments to be sure you have made no mis- 
takes before you run the program. Once you 
have run the BASIC program and have the 
machine code in the machine, the normal 
READY indication should display on your 
screen. 

If you have a new PET or have installed 
the new ROM set in your machine, do not try 
to run Mini Monitor. The zero-page alloca- 
tion is different in the new operating sys- 
tem, and the program can cause you to lose 
your operating system. If you have one of 
the old PETs and have the normal READY 
indication after loading the machine code, 
you can run the program. You must type 
SYS(826) and press the return key. This will 
link in the machine-language program and 
produce the following display: 

MM 

0400 00 ( )— Blinking cursor 

This start display should appear every 
time you enter the program. The MM indi- 
cates that you are running Mini Monitor and 
have successfully entered the program. The 
four-digit number is the hexadecimal mem- 
ory address, which is followed by a two- 
digit number that shows the hexadecimal 
contents of the memory cell. The actual 
value of the two-digit number will depend on 
the contents of memory at the time of dis- 


88 Microcomputing, October 1980 


0401 00 4C 4C entered into address 0401 

0402 00 43A 3A entered into address 0402 

0403 00 3 03 entered into address 0403 

0404 00 0 00 entered into address 0404 

•Note: The actual value displayed in this column will depend on the contents of 
memory at the time of the display and may not be the values shown. 

Table 1. 


0401 4C F6B1: new address entered and RETURN pressed 

F6B1 A5 ( )— Blinking cursor new address displayed 

F6B1 A5 FI: new address 00F1 (leading zeros assumed) 

00F1 01 ()— Blinking cursor 

00F1 01 F6033A: new address 033A (four characters preceding the colon) 

033A D8 ()— Blinking cursor 

033A D8 : return to start 


Starting 

04 00 

05 3A Ending 

Address 

Hi Lo 

Hi Lo Address 

SYS(826) 


RETURN pressed (enter Mini Monitor program) 

MM 




0400 

XX* 

E5: 

first address to be inspected (address 00E5) 

00E5 

XX 

3A 

enter ending address Lo byte 

00E6 

XX 

05 

enter ending address Hi byte 

00E7 

XX 

FI: 

next address to be inspected (address 00F1) 

00F1 

XX 

01 

enter 01 always (01 =Tape #1) 

00F2 

XX 

F7: 

next address to be inspected (address 00F7) 

00F7 

XX 

00 

enter starting address Lo byte 

00F8 

XX 

04 

enter starting address Hi byte 

00F9 

XX 

20 

always enter 20 at this address 

00FA 

XX 

00 

always enter 00 at this address 


•Note: The XX represents the contents of the address before modification. 

Table 3. 


MM 

0400 00 ( y - Blinking cursor 

Table 2. 

Address 

00E5 enter FF 

OOE6 enter 03 

00F1 enter 01 

00F7 enter 3A 

nnCQ nninr (V) 


Uvr 0 enxer uo 

OOF9 enter 20 


00FA enter 00 

play. To open and display the next sequen- 

Type S and press RETURN 

Type MINI MONITOR and press RETURN 

tial memory cell, just press the RETURN 

key. Your display should now appear as 


follows: 

Table 4. 

MM 



When you want to return to the BASIC in- 
terpreter operating system, type X and 
press the return key. You should then see 
the familiar READY display. If not, you must 
turn off the power to reset the machine. 

MM 

0400 00 X exit to BASIC 
READY. 

( )— Blinking cursor 

The Mini Monitor program allows you to 
name and save programs from any point in 


0401 00 ()- Blinking cursor 

To change the data in a memory address, 
type the new hexadecimal data and press 
the return key. The program will enter the 
data in the last open address and then open 
and display the next sequential memory ad- 
dress. Only the last two numbers typed be- 


ing the new address to be opened and dis- 
played. 

Only the last four characters preceding 
the colon will be used to establish the new 
address. If there are less than four charac- 


memory. However, due to the save routine 
utilized, certain addresses must be set to 
specific values to assure correct save oper- 
ation. Furthermore, you must know the 
hexadecimal starting and ending ad- 
dresses of the program you want to save. 
The Mini Monitor program may be used to 


fore the return key will be entered into mem- 
ory. If only one number is typed before the 
return key, the most significant digit of the 
data is automatically assumed to be zero. 
Table 1 shows some examples of how to 
change data in a memory address. 

If you want to check if the correct value 
was entered into memory, type t (up arrow) 


ters preceding the colon, leading zeros are 
automatically assumed for the new ad- 
dress. If there are no characters preceding 
the colon, the program automatically 
returns to the start and displays address 
0400. Examples of how to change the ad- 
dress being displayed are shown in Table 2. 


inspect the specified addresses and modify 
the data as needed. These modifications 
must be made prior to executing the save. 
Table 3 lists the steps necessary to save a 
program that has a starting address of 0400 
and an ending address of 053A. Using the 
Mini Monitor, you would inspect and modify 


and press the return key. This will cause the 
program to open and display the previous 
memory cell. Repeating the operation will 
again cause the next previous memory cell 
to be displayed. You can continue in this 
manner as long as you wish, going back- 
ward through memory. With the examples 
in Table 1, the display is as follows: 

0405 oo t 
0404 oo t 
0403 03 t 
0402 3A t 

0401 4C ( )- Blinking cursor 

The Mini Monitor program automatically 
starts to open and display memory at hexa- 
decimal address 0400 and continues se- 
quentially after that. To change the address 
to be displayed next, type the hexadecimal 
address you wish to display, then type : (co- 
lon) and press the RETURN key. The new ad- 
dress followed by its contents will then be 
displayed. Pressing the return key will 
cause the next sequential address follow- 


10 FOR AD=826 TO 1023 
20 READ D$ 

30 L=ASC(LEFT$(D$,l)) 

40 R=ASC(RIGHT$(D$,l)) 

50 IF L>64 THEN L=L-7 
60 1=(L-48)*16 
70 IF R>64 THEN r=R-7 
80 d=L+(R-48) 

90 POKE AD,D 
100 NEXT AD: END 

110 DATA D8, 20, 36,E2,A9,4d,20,A7,03,A0, 00 ,A9, 04,85,50,20 
120 DATA D2,C9,A5,5C,20,AD,03,98,20,AD,03,20,A5,03,B1,5B 
130 DATA 20,AD,03,20,E6,03,E0,00,F0,2F,B5,1F,C9,5E,D0,0A 
140 DATA 88,C0,FF,D0,DA,C6,5C,4C,49,03,C9,3A,D0,0E,CA,8A 
150 DATA F0,BE,20,C6,03,A8,20,C3,03,4C,47,03,C9,58,F0,5B 
160 DATA O9,53,F0,0D,20,c6,03,91,5B,c8,D0,B3,e6,5C,4c,49 
170 DATA 03,20,E6,03,86,EE,A2,00,4C,B1,F6,A9,20,20,D2,FF 
180 DATA 4C,D2,FF,48,4A,4A,4A,4A,20,B8,03,68,29,0F,18,C9 
190 DATA 0A,90,02,69 S 06,69,30,D0,E7,8A,F0,12,20,D9,03,E0 
200 DATA 00 ,F0 ,0B ,85 ,FE ,20 ,D9 >03 ,0A,0A ,0A ,0A ,05 ,FE ,60 ,CA 
210 DATA B5, 20,18, 09,41,90, 02,69, 08,29,0F, 60 ,A2,00, 20 ,A5 
220 DATA 03,20,CF,FF,C9,0D,F0,F3,E0,10,F0,F5,95,20,E8,D0 
230 DATA F0 ,00 ,00 ,00 ,00 ,00 

Listing 1. BASIC program. 


Microcomputing , October 1980 89 


hoc. 

Code 


Label 

Symbolic 

033A 

D8 



START 

CLD 

033B 

20 

36 

E2 


JSR CLSCR 

033E 

A9 

i*D 



LDA #’M 

03**0 

20 

AT 

03 


JSR WRTW 

03**3 

A0 

00 



ldy #00 

03U5 

A9 

01* 



LDA #01* 

031*7 

85 

5C 


INAD 

STA ADRH 

031*9 

20 

D2 

C9 

DISP 

JSR CRLF 

03l*C 

A5 

5C 



LDA ADRH 

03UE 

20 

AD 

03 


JSR WRBY 

0351 

98 




TYA 

0352 

20 

AD 

03 


JSR WRBY 

0355 

20 

A5 

03 


JSR SPTW 

0358 

B1 

5B 



LDA (ADRL) ,Y 

035A 

20 

AD 

03 


JSR WRBY 

035D 

20 

E6 

03 


JSR INPUT 

0360 

E0 

00 


CKINS 

CPX #00 

0362 

F0 

2F 



BEQ OPEN 

0361* 

B5 

IF 



LDA BUF-1 ,X 

0366 

C9 

5E 



CMP #’f 

0368 

D0 

0A 



BNE CKCOL 

036a 

88 




DEY 

036B 

C0 

FF 



CPY #$FF 

036d 

D0 

DA 



BNE DISP 

036f 

c6 

5C 



DEC ADRH 

0371 

hC 

h9 

03 


JMP DISP 

037** 

C9 

3A 


CKCOL 

CMP #' : 

0376 

D0 

0E 



BNE CKX 

0378 

CA 




DEX 

0379 

8a 




TXA 

037A 

F0 

BE 



BEQ START 

037C 

20 

c6 

03 


JSR PKBY 

037F 

A8 




TAY 

0380 

20 

C3 

03 


JSR CKBY 

0383 

hC 

hi 

03 


JMP INAD 

0386 

C9 

58 


CKX 

CMP #'X 

0388 

F0 

5B 



BEQ EXIT 

038a 

C9 

53 



CMP #’S 

038 c 

F0 

0D 



BEQ SAVR 

038E 

20 

c6 

03 


JSR PKBY 

0391 

91 

5B 



STA (ADRL) ,Y 

0393 

C8 



OPEN 

INY 

0391* 

D0 

B3 



BNE DISP 

0396 

E6 

5C 



INC ADRH 

0398 

1*C 

1*9 

03 


JMP DISP 

039B 

20 

e6 

03 

SAVR 

JSR INPUT 

039E 

86 

EE 


SAVIT 

STX FNLEN 

03A0 

A2 

00 



LDX #00 

03A2 

i*c 

B1 

f6 


JMP SAVE 

03A5 




» 

Subroutines follow 

03A5 

A9 

20 


SPTW 

LDA #$20 

03A7 

20 

D2 

FF 

WRTW 

JSR WRT 

03AA 

he 

D2 

FF 

WRON 

JMP WRT 

03AD 




; 


03AD 

1*8 



WRBY 

PHA 

03AE 

hA 




LSR 

03AF 

hA 




LSR 

03B0 

hA 




LSR 

03B1 

hA 




LSR 

03B2 

20 

B8 

03 


JSR WRASC 

03B5 

68 




PLA 

03B6 

29 

0F 



AND #$0F 

03B8 

18 



WRASC 

CLC 

03B9 

C9 

0A 



CMP #$0A 

03BB 

90 

02 



BCC ASC 

03BD 

69 

06 



ADC #06 

03BF 

69 

30 


ASC 

ADC #$30 

03C1 

D0 

E7 



BNE WRON 

03C3 




i 


03C3 

8A 



CKBY 

TXA 

03CU 

F0 

12 



BEQ BYRDY 

03C6 

20 

D9 

03 

PKBY 

JSR NIB 

03C9 

E0 

00 



CPX #00 

03CB 

F0 

0B 



BEQ BYRDY 

03CD 

85 

FE 



STA LNIB 

03CF 

20 

D9 

03 


JSR NIB 

03D2 

0A 




ASL 


03D3 

0A 


ASL 



03Dl* 

0A 


ASL 



03D5 

0A 


ASL 



03D6 

05 

FE 

ORA LNIB 



03D8 

60 

BYRDY 

RTS 



03D9 


j 




03D9 

CA 

NIB 

DEX 



03DA 

B5 

20 

LDA BUF,X 



03DC 

18 


CLC 



03DD 

C9 

1*1 

CMP #$1*1 



03DF 

90 

02 

BCC HEX 



03E1 

69 

08 

ADC #08 



03E3 

29 

0F HEX 

AND #$0F 



03E5 

60 

EXIT 

RTS 



03E6 


j 




03E6 

A2 

00 INPUT 

LDX #00 



03E8 

20 

A5 03 

JSR SPTW 



03EB 

20 

CF FF RDON 

JSR RDT 



03EE 

C9 

0D 

CMP #$0D 



03F0 

F0 

F3 

BEQ EXIT 



03F2 

E0 

10 

CPX #$10 



03Fl* 

F0 

F5 

BEQ RDON 



03F6 

95 

20 

STA BUF,X 



03F8 

E8 


INX 



03F9 

D0 

F0 

BNE RDON 



03FB 


» 

Not used 



03FC 


J 

Not used 



03FD 


» 

Not used 



03FE 


» 

Not used 



03FF 


» 

Not used 



Alphabetical list of label 

locations 



Label 


Location 

Label 

Location 


ADRH 


005C 

NIB 

03D9 


ADRL 


005B 

OPEN 

0393 


ASC 


03BF 

PKBY 

03C6 


BUF 


0020 

RDON 

03EB 


BYRDY 


03D8 

RDT 

FFCF 


CKBY 


03C3 

SAVE 

F6B1 


CKCOL 


0371* 

SAVIT 

039E 


CKINS 


0360 

SAVR 

039B 


CKX 


0386 

SPTW 

03A5 


CRLF 


C9D2 

START 

033A 


DISP 


031*9 

WRASC 

03B8 


EXIT 


03E5 

WRBY 

03AD 


FNLEN 


00EE 

WRON 

03AA 


HEX 


03E3 

WRT 

FFD2 


INAD 


03U7 

WRTW 

03A7 


INPUT 


0 3E6 




LNIB 


00FE 




Zero Page locations used 




Location 

Label 

Remarks 



0020 to 002F BUF 

Input buffer for commands 

and 

005B 


ADRL 

Address Lo byte 

File 

Name 

005C 


ADRH 

Address Hi byte 



00E5 


EADL 

Ending address Lo byte for 

SAVE 

00E6 


EADH 

Ending address Hi byte for 

SAVE 

00EE 


FNLEN 

File Name length for SAVE 


00F1 


DN 

Device Number for SAVE 


00FT 


SADL 

Starting address 

Lo byte for SAVE 

00F8 


SADH 

Starting address 

Hi byte for SAVE 

00F9 


FNADL 

File Name address Lo byte 

for SAVE 

00FA 


FNADH 

File Name address Hi byte 

for SAVE 

00FE 


LNIB 

Low nibble used 

in PKBY subroutine 


PET Operating System calls used 

Label Location 

CISCR E23 6 

CRLF C9D2 

SAVE F6B1 

RDT FFCF 

WRT FFD2 


Listing 2. PET machine-language Mini Monitor program. 


90 Microcomputing, October 1980 


To avoid errors, use the following guide whenever you want to 
save a program using Mini Monitor: 


Address 

00E5 Enter ending address Lo byte 

00E6 Enter ending address Hi byte 

00F1 Enter 01 

00F7 Enter starting address Lo byte 

00F8 Enter starting address Hi byte 

00F9 Enter 20 

00FA Enter 00 

Type S and press RETURN 

Type program name and press RETURN 


the addresses as necessary. Once these 
modifications are made, type S and press 
the return key. The display should then look 
like this: 

00FB XX S 0- Blinking cursor 

You may now type the name of the pro- 
gram. Up to 16 characters are allowed for 
the program name, and quotes are not nec- 
essary. After you finish typing the name, 
press the return key. You should then see 
this message displayed: 

PRESS PLAY & RECORD ON TAPE #1 

When the save routine in finished, the 
tape will stop and the program will exit to 
the BASIC interpreter operating system to 
give you the familiar READY display. Pro- 
grams saved on tape by Mini Monitor can be 
loaded or verified in the same way as pro- 
grams recorded by BASIC. When saving 
programs with Mini Monitor, make sure that 
the starting address you enter is less than 
the ending address, because the program 
does not check this. Otherwise, it will be 
necessary to execute a power-off reset of 
the machine and your program will be lost. 
To save the Mini Monitor on tape, enter the 
values in Table 4 into the indicated ad- 
dresses. 

Once you have Mini Monitor on tape, you 
can load it whenever you need to. The pro- 
gram is loaded from tape by typing LOAD 


and pressing the return key, and then press- 
ing the PLAY on tape #1. In a few seconds, 
you should see this display: 

FOUND MINI MONITOR 
LOADING 

The program should only take a few 
seconds to load before the normal READY 
indication appears. Now type NEW and 
press the return key to reset the BASIC op- 
erating system pointers after the load oper- 
ation. You may now enter BASIC programs 
as usual or use Mini Monitor. 

If you already have a BASIC program in 
your machine that you would not want to 
lose by typing NEW, and want to load Mini 


Monitor, you must first type ?PEEK(124), 
PEEK(125) and press the return key. Write 
down the values and their respective loca- 
tions, then load Mini Monitor in the normal 
manner. After the load is finished, type 
POKE 124,X:POKE 125, Y, where X and Y are 
the values you wrote down for their respec- 
tive locations, and press the return key. 
Your program is now preserved, and Mini 
Monitor is ready for use. 

Listing 2 is the machine-language pro- 
gram listing and includes an alphabetical 
list of label locations, zero-page locations 
used and the PET operating system calls 
used in the program. ■ 








RONDURE COMPANY 


iS 74 


the computer room 


ORDERING INFORMATION: 

We ship the ame day we receive a certified check or money order. Texas residents 
add 5% sales tax. Write for our CATALOG of many parts, terminals, printers, etc. 
All items subject to availability. Your money returned if we are out of stock. Mail 
order hours 9-4 Monday-Thursday. Closed Fridays. 


SHIPPING INFORMATION: 

Modems: $3.00 each; Key Boards $4.00, Power Supply $7.00. 

Large Items & Parts: Specify Freight or Air Freight Collect. 

Foreign Orders: Add appropriate frelgnt or postage. 

We now take Master Charge and Visa orders. Specify full number, 
bank number and expiration date. 


SPECIAL 

Printer for your 
Microcomputer 


USED 

POWER 

SUPPLY 

$15.00 

5V at 12 Amp 
16V at 6 Amp 
6V at 2 Amp 


USED 

OMNITEK 


• 80 Print positions 

• Receive only 

• ASCII code 

• RS-232 interface 

• 30 CPS 

• Upper & lowercase 

• Shipping wt. 75# 

Shipping containers $15.00. 

(used) 

(good working condition) 


Will run on serial RS232 port of 
most micros including TRS-80. 


$450.00 


$19 50 


NEW 

POWER 

SUPPLY 

$25.00 

5V at 3 Amp 
12V at 6 Amp 
-12V at 3 Amp 


NEW 

POWER SUPPLY 

(AC-DC Brand) 

1- 22V @ 1.9a $20.00 

2- 1 5V @ 2.4a $30.00 


MICRO SWITCH KEYBOARD 

USED BUT LOOKS VERY NICE 


ASC II $40.00 

(With Print) 


MODEM 

ORIGINATE 

ONLY 

TESTED 


$90.00 Sale 


USED FANS 


Pin feed— 9” paper 


Modem 

pickup 


GE TERMINET 
300 PRINTER 


WE HAVE FLAT-PACK 
ACOUSTIC 


i/ 0 Reader Service index— page 241 


Microcomputing, October 1980 91 


Merrill Lessley 
4903 Nort haven Avenue 
San Diego, CA 92110 


Easy-to-Build 

Computer-Controlled Triac Dimmer 


This hardware/software article presents this project in the right light. 


Y ou can control the intensity of high- 
wattage lamps or the speed of univer- 
sal ac motors with your computer by adopt- 
ing the circuitry and software in this article. 
The dimmer works through conventional 
phase-control techniques and, because of a 
simple sensing circuit, even adjusts to 
variations in line voltage. 

Design features include an optically 
isolated gating circuit that helps protect 
your favorite piece of hardware from 
destructive ground loops or other disasters. 
Power capacity is determined primarily by 
triac selection. Most triacs work well when 
attached to an acceptable heat sink and 
provided with adequate ventilation. With a 
40 ampere triac and convection cooling, the 
unit comfortably drives a 200 watt load. 


Besides controlling such high-current 
loads this dimmer is also a voltage- 
controlled device. This means that remote- 
control applications can be accomplished 
with minimal external wiring. Interfacing is 
accomplished through a digital-to-analog 
converter (DAC), which transmits a 0 to 5 
volt dc signal to the dimmer’s control card. 
Final ac output is a function of this signal, 
though not necessarily a linear one. 

Circuit Description 

Before constructing the dimmer, you 
should understand how the circuit works. 
The schematic in Fig. 1 shows a small isola- 
tion transformer coupled to a full-wave 
bridge formed by diodes D1, D2, D3 and D4. 
The unfiltered output from this bridge acts 


as a gating signal for the zero-crossing 
detector created by Q1. Whenever the out- 
put from the bridge approaches a zero 
potential, Q1 produces a narrow and 
positive pulse, which is inverted by Q2. One- 
hundred and twenty such pulses occur 
every second. 

This pulse chain continually resets the 
ramp signal generated by C3 charging itself 
through R5. Buffering this ramp is the 
source follower formed by operational 
amplifier (op amp) A in IC1. An oscilloscope 
connected to test point B reveals a linear 
ramp being reset each time the ac line 
signal crosses its zero point (Photo 1). 

The ramp signal from op amp A travels to 
the non-inverting input (pin 10) of a voltage 
comparator (op amp B). This comparator 


D 5 



92 Microcomputing, October 1980 





Photo 3. Time — 2ms/C. Volts— 2 mV/C. Photo 4. Time—2ms/C. Volts — 50 V/C. 


swings into positive saturation as the ramp 
signal reaches a level almost equaling the 
reference voltage at pin 9. Resetting the 
ramp forces the comparator back into 
negative saturation. The width of the output 
pulse at pin 8, therefore, is determined by 
the voltage applied to pin 9. Q3 inverts this 
variable width pulse and correspondingly 
turns the LED in IC2 on and off. 

To illustrate the importance of this 
variable width pulse, consider the following 
examples referenced to the positive half of 
the ac line signal. A voltage level at pin 9 
slightly less than the ramp’s maximum 
amplitude produces a narrow pulse at test 
point C (Photo 2). The output of this pulse is 
timed to occur as the positive swing of the 
sine wave approaches its zero potential. 
Lowering the voltage at pin 9 produces a 
wider pulse at the comparator’s output 
(Photo 3), whose leading edge occurs 
earlier in the sine wave’s positive swing. 


The sine wave’s negative half duplicates 
this pulse pattern. 

Pulses from the comparator turn the LED 
on and off and, therefore, trigger the light- 
activated silicon-controlled rectifier 
(LASCR) in IC2. This LASCR, working in con- 
junction with a full-wave bridge (diodes D6, 
D7, D8 and D9), helps to generate a series of 
pulses that eventually reaches the triac’s 
gate through R18. And this finally switches 
the triac on and off so that current flows 
through the load. 

In summary, the amount of current pass- 
ing through the load relates directly to the 
triac’s rapid on-off action. A low-level signal 
at pin 9 triggers the triac early in the sine 
wave when more current can ultimately 
pass through the load. Conversely, increas- 
ing the dc potential at pin 9 reduces the 
triac’s on time and decreases its output 
capability. 

Photo 4 illustrates how a triac’s switch- 


ing action literally slices up the ac sine 
wave. The pulse chain producing this exam- 
ple is sampled in Photo 2. In this case, the 
triac is driving a 300 watt incandescent 
load at 80 volts true rms. 

At this point, the circuit represents a sim- 
ple voltage-controlled dimmer. Unfor- 
tunately, an inverse relationship exists be- 
tween control voltage and actual dimmer 
output. Solving this inconvenience requires 
the addition of op amp C. Output from this 
amplifier equals the voltage at pin 12 minus 
the voltage at pin 13. 

The circuit reveals that the minimal 
signal at pin 12 must normally be slightly 
less than the ramp’s maximum amplitude. 
RIO provides this signal and corresponding- 
ly acts as the dimmer’s idle or low-end ad- 
justment: The dimmer will start to idle if 0 
volts appear at pin 13 and RIO supplies pin 
12 with a dc signal just below the ramp’s 
maximum amplitude. Raising the voltage at 


Microcomputing, October 1980 93 




pin 13 increases the dimmer’s output. Op 
amp D, configured as a source follower, buf- 
fers the dc input signal at pin 3, IC1. 

By adding op amp C, the dimmer’s output 
becomes a positive function of control 
voltage input. At 0 control volts, the dimmer 
idles or remains off; at 5 control volts, the 
dimmer reaches full power. Op amp C fur- 
ther serves as a sensing circuit along with 
R6, R7 and R8, all of which monitor line- 
voltage variations. 

An appreciable drop in line voltage 
decreases the dc potential at pin 12 via R6 
and R8. And, because of the summing mode 
of op amp C, the voltage at pin 9 is also 
reduced. It is this reduction that forces the 
triac to advance its firing angle and thereby 
provide compensation for apparent line 
loss. Incidentally, R8 sets the sensitivity of 
this circuit. 

This means that computer control of the 
dimmer’s output can be achieved by con- 
necting a digital-to-analog converter to the 


Fig. 2. Digital-to-analog converter circuit. 

dimmer’s control-voltage input. Since this 
arrangement only requires two wires, you 
can easily install the dimmer in remote loca- 
tions. Almost any DAC will do, providing it 
outputs a 0-to-5-volt signal. The converter in 
Fig. 2 works well for general applications 
and is driven by a simple PIA port. Note the 
PIA’s inverted output. On my system, this 
inversion helps because a manual reset 
drives the PIA outputs high. Inverting the 
port adjusts the DAC’s output to 0 volts 
after each reset. 

Construction 

Constructing the dimmer is simple. You 
can print a PC board from the actual-size 
foil pattern in Fig. 3; Fig. 4 details the cor- 
rect parts layout. An assembled board is 
pictured in Photo 5, and Fig. 5 presents the 
final wiring diagram. 

Avoid connecting the dimmer’s power 
supply common to the ac line ground. Also 
remember to polarize the plug by connect- 


ing the black wire to the hot side of the ac 
line and the white wire to the neutral side. 
The all-important safety ground, the green 
wire, must be attached to the dimmer’s 
metal enclosure. Follow this procedure to 
protect both you and your equipment from 
dangerous electrical shocks. 

Take special care to locate the dimmer’s 
power outlet on the neutral side of the triac 
to provide a specific safety measure intend- 
ed to reduce the possibility of inadvertent 
shock. Wiring the plug into the triac’s hot 
side increases the danger of electrical 
shock because the full ac line power is 
always just a fingertip away, even with an 
inactive or idling triac. Placing the plug on 
the neutral side forces both sides of the 
outlet to remain essentially at ground 
potential whenever the triac is off or in a 
high-impedance state. 

The triac’s rapid on-off switching pro- 
duces current surges that generate signifi- 
cant radio-frequency interference (rfi). Long 


* 

* 

* 

* 

* 

* 

* 

* 

* 

* 

* 

* 

* 

* 

* 

* 

* 

* 

* 

* 



THE SS 


— — *-c 

GREEIM 

SCREEIN 


• IMPROVE IMAGE CONTRAST 

• REDUCE EYE FATIGUE 

• ENHANCE SCREEN LEGIBILITY 

• PROVIDE A MORE PLEASING 
DISPLAY 

• GIVE A DISTINCTIVE PROFESSIONAL 
LOOK TO YOUR SYSTEM 

The GREEN SCREEN is custom molded to 
fit nicely over the picture tube. 

Mounts in seconds with invisible double face 

tape Money back guarantee 

CALL: [212)236-5916 —P- mm 

or send $12.50 52 S&H 

ALPHA product co. 49 

85-71, 79th St., Woodhaven, N.Y. 11421 o 
* * * ****** ***"* 


* 

* 

* 

* 

* 

* 

* 

* 

* 

* 

* 


CP/M users! 

The ED-80 TEXT EDITOR 


■ $50,000 in Development Costs - 
Yours for Only $99! 

■ For all CP/M, Cromemco, TRS-80 
Mod II, and North Star Systems. 

■ Full Screen Text Editor w/Scrolling. 

■ For all CRT and Video Monitors. 

■ Features Found only on IBM, CDC, 
UNIVAC and DEC Systems. 

■ Forward or Backward Locate and 
Change Commands. 

■ Field Proven - More than 2 Years. 

4 Terrific £QO00 Write for FREE 
Value — Color Brochure 

Software Development & Training, Inc. 

Post Office Box 4511, Dept. K 
Huntsville, Alabama 35802 * 


FOR MICRO-COMPUTERS 

Special 
Trial 
Offer!! 




When you order 23 C-10 cassettes 
featuring Precision transport 
mechanism and Digital pressure 
pad. (In individual, dust-proof, 
plastic boxes with labels) for a low 
introductory price of $19.95, we 
will send you FREE 1 C-10 cassette 
for you to test. If you are not 
delighted with its performance you 
can return the unused 23 units for 
a full refund. Please add $1.05 to 
cover postage and handling. N.Y. 
Res. add 7%. VISA and Master 
Charge accepted. 

Write for pricing on larger quantities. 


Studio Magnetics Co., inc 

Slll^ 


Department K-l ^179 
12 Long Island Avenue 
Holtsvi lie, N.Y. 11742 
516-289-3400 


94 Microcomputing, October 1980 





Photo 5. An assembled circuit board. 


circuit wires act as transmitting antennas 
for such noise. To counteract this, shield or 
twist the triac’s gate leads and keep them 
short. Rfi can also travel down the ac line. 
This can be largely corrected by utilizing a 
100 mH choke (LI) and a bypass capacitor 
(C5). 

Testing and Adjustment 

Test and adjust the dimmer before you 
connect it to your computer. Start testing 
and adjusting procedures by centering pots 
RIO and R22. Connect an ordinary 60 watt 
lamp to the dimmer’s output. Plug the dim- 
mer in and adjust RIO until the lamp just 
barely begins to glow. Unplug the dimmer 
and replace the lamp with a load approx- 
imately equal to 50 percent of the dimmer’s 
intended capacity. Apply power and re- 
adjust RIO. 

If you have a spare 5 volt power supply, 
the next step will be easy. Just attach a 10k 
potentiometer across the supply leads. Ad- 
just the pot for a 2.5 volt output. Connect 
this signal to the dimmer’s control voltage 
input and adjust R22 for 79 true root mean 
square (rms) volts across the load. Making 
this adjustment requires a true rms meter; 
ordinary ac meters are designed to measure 
relatively smooth sine waves and not the 
fragmented signals produced by triacs. 


Producing the 79 volt true rms value at a 
2.5 volt control signal helps produce a 
satisfactory visual curve for the dimmer. 
Because the human eye perceives light in a 
somewhat logarithmic fashion, the smooth 
control of incandescent loads requires that 
a nonlinear relationship exist between con- 
trol voltage and true rms output. 

Put another way, calibrating in this man- 
ner forces the dimmer’s luminary output to 
appear as if it were actually a linear func- 


tion of control voltage input. A more com- 
prehensive explanation of this 
phenomenon is beyond the scope of this ar- 
ticle. You should also realize that this ad- 
justment slightly limits the dimmer’s 
highest output to about 115 volts, an in- 
significant loss with incandescent loads. 

To calibrate without a true rms meter, in- 
crease the control voltage to 5 volts and at- 
tach a standard ac meter across the load. 
Turn R22 fully clockwise. The meter should 


HBfej>RODUCTS« TRS-80 


SDF 



MALL 

YSTEM 


NEW! 

WHISTLER: HONE CONTROLLER INTERFACE - 134.95. New hardware product that 

controls lights, appliances, computer peripherals, darkroom timers and other 
115 volt devices anywhere in your house! Software controlled by cassette 
cable. Use with Sears or BSR Home Control System with ultrasonic option. 
Assembled, tested, self-contained, and includes Basic software. 

TRS-80 DISK & OTHER MYSTERIES - $22.95, H.C. Pennington. Best disk book 
we've seen! Directory secrets, file formats, damaged disk recovery, etc. 

LEARNING LEVEL II - $15.95, D.A. Lien. Learn Level-2 like you did Level-1, 
step by step. Same author and style as Level-1 manual. Super new book! 

UTILITIES 

RSN-2: MACHINE LANGUAGE MONITOR FOR 16K TRS-80'S - $26.95 
RSM-2D: THREE VERSIONS OF RSM-2 FOR DISK SYSTEMS - 29.95 
RSM-2 RELOCATOR: PUT RSM-2/2D ANYWHERE IN MEMORY - 9.95 

Machine Language monitors with Z-80 disassembler! HEX and ASCII memory 
dumps; EDIT, MOVE, EXCHANGE, VERIFY, FILL, ZERO, TEST, or SEARCH memory, 
read/write SYSTEM tapes, enter BREAKPOINTS, PRINT with TRS232 or Centronics, 
read/write disk sectors directly! RSM-2 tape loads at top of 16K LEVEL I or 
II; RSM-2D disk includes 3 versions for 16K, 32K and 48K. 

DCV-1 : CONVERT SYSTEM PROGRAMS TO DISK FILES -$9.95. Execute Adventure, 

Air Raid, RSL-1, ESP-1, T-6UG, etc. from disk, even if they interfere with 
TRSD0S ! New version works with TRSD0S 2.3. 

BASIC-IP: LEVEL-1 BASIC WITH PRINTING! - $19.95. Run any LEVEL-I BASIC 

program on your 16K Level-2. PLUS LPRINT and LLIST with our TRS232 or 
Centronics. Furnished on tape; can be used from disk. 

MACHINE LANGUACE GAMES 

AIR RAID, BARRICADE or RSL-1: - $10.00 each, all 3 for $25.00 

AIR RAID: A super shooting gallery; our most popular game. Ground based 

missile launcher shoots high speed aircraft! Hours of fun! 

BARRICADE: "BREAKOUT" for the TRS-80! Break through 5 walls with 

high-speed ball and keyboard controlled paddle! 96 different options! 

RSL-1: Enter patterns with repeating keyboard! Save patterns on tape (4 

furnished). Play John Conway's LIFE. FAST - about 1 second per generation! 

SMALL SYSTEM SOFTWARE S P. 0. BOX 366 Ml NEWBURY PARK, CA 91320 


MODE L-II TRS-80* 

CP/N** VERSION 2.0 FOR THE NODEL-II - $170.00. Latest version from Digital 
Research. Runs both single and double density disks! "Standard" version 
runs nearly any CP/M software, including Cobol, Fortran, C-Basic, M-Basic, 
business and accounting packages, etc. Hundreds of programs available! 

RSHII : ENHANCED RSM MONITOR FOR THE NODEL-II - $39.95. Relocatable version 

of RSM-2D plus screen editor for modifying either memory or disk sectors in 
both Hex and ASCII, split screen scrolling, and formatted serial or parallel 
printing. Sold on self-booting disk; directions to save as TRSD0S file. 

PROFESSIONAL SOFTWARE 

THE ELECTRIC PENCIL FOR THE TRS-80: TAPE-S99.95, DISK-SI 50.00. Popular 

video editor for creating and saving text files. Prints formatted copy with 
right justification, page titling & numbering, etc. Upper case only, or 
lower case with modification. 16K Level-1 or 2 (tape). 

CP/M** OPERATING SYSTEM FOR THE NODEL-I - $145.00. The 8080/Z80 "Software 
Bus for the Model-1 TRS-80. Includes TRS232 and RS-232-C software, 
lower-case support, debounce, DCV-2 and other unique utilities. Allows use 
of many available programs written for CP/M. 

PRINTER SUPPORT 

TRS232 PRINTER INTERFACE - $49.95 ($ 59.95 after June 30). Assembled & 
tested printer interface for RS232 or 20-mil current loop printers. 
Expansion interface not required. Print from level-II BASIC, CP/M, 
BASIC-IP, ELECTRIC PENCIL, etc. Standard cassette software included. Add 
$2.00 for shipping. 

TRS232 "FORMATTER" SOFTWARE PACKA6E - $14.95. Adds page and line length 
control, printer pause, "smart" line termination, etc. to TRS232. 

RSM232: Adds RS-232-C capability to RSM-2/2D monitors - $ 9.95 

PEN232: RS-232-C for cassette version Electric Pencil - 9.95 

EDT232: TRS232 and RS-232-C for tape version of EDTASM - 9.95 

OTHER PRODUCTS FOR THE TRS-80 

ESP-1: $29.95. Assembler, Editor, Monitor (8080 mnemonics) 

LST-1: 8.00. Listing of Level-1 BASIC with some comments 

•*CP/M tm Digital Research, Inc. *TRS-80 tm Tandy Corp. 

See your dealer or order direct. Calif. Residents add 6X tax 

SMALL SYSTEM SOFTWARE B P O BOX 366 M NEWBURY PARK 


iS Reader Service index — page 241 


Microcomputing, October 1980 95 




Fig. 3. Full size PC board foil 
pattern. 



read between 115 and 120 volts. Now slowly 
rotate R22 counterclockwise until the meter 
indicates a 2 volt decrease from the 
previous reading. A fairly accurate curve 
can be achieved through this alternate pro- 
cedure. 

Alignment for universal ac motors is 
largely a matter of personal preference. 
Just remember that RIO adjusts the dim- 
mer’s idle level, and R22 determines its 
maximum output. These controls can also 
establish a confined operating range for the 
dimmer. RIO, for example, might be set so 
that the dimmer’s output will never fall 
below half power. Computer control would 
then range from half to full power. Also, 


when working with an electric motor, avoid 
overheating conditions that occur when a 
motor stalls or operates too slowly. 

After testing and alignment, check again 
for wiring errors that might produce ground 
loops. Use an ohmmeter to make certain 
that no conductive paths exist between the 
ac line plug pins and the control voltage 
wires. If the dimmer passes this test, it can 
be attached to the computer’s DAC. 

Fig. 6 illustrates a convenient way of mak- 
ing this connection. Flexibility is gained 
through SI, which affords you the oppor- 
tunity to select manual, computer or exter- 
nal control. Making this connection pre- 
pares the dimmer for actual software im- 


plementation. 

Software 

My system is an odd blend of parts, but, 
in general, it likes to assume the identity of 
a 6800-based unit with a MIKBUG monitor. 
And, as I’ve said, the computer’s DAC is 
driven by a PIA at $8008 and $8009. 

Systems configured like this can use 
Listing 1 to program a 6820 PIA to act as an 
eight-bit latching port. Load the program 
and place the hexadecimal data to be trans- 
mitted into memory location $000D. After 
this, load the starting address ($0000) into 
$A048 and $A049. Type G, and the port will 
respond by sending the DAC its data. 


96 Microcomputing, October 1980 









Yes, I want to LEARN Level II! 

COMPUSOFT® PUBLISHING • 1050E^ Pioneer Way • El Cajon CA 


92020 


✓•32 


Please send. 


copies of LEARNING LEVEL 

II. My check for $15.95 each + $1.45 P&H is enclosed. 
(CA addresses add 6% sales tax). 

I understand my order will be shipped promptly and 
there is a 30 day money-back guarantee. 


NAME 


ADDRESS 
CITY 


STATE. 


ZIP CODE 


iS Reader Service index— page 241 


Microcomputing, October 1980 97 




0000 

7F 

8009 

CLR 


$8009 

0003 

86 

FF 

LDA 

A 

#$FF 

0005 

B7 

8008 

STA 

A 

$8008 

0008 

86 

04 

LDA 

A 

#$04 

000A 

B7 

8009 

STA 

A 

$8009 

0000 

86 

XX 

LDA 

A 

#$XX (DATA) 

000F 

B7 

8008 

STA 

A 

$8008 

0012 

3F 


SWI 




Initialize PIA into Latching 
Port 

Load and Send Data 

(Change to 39 for User Routine) 


Listing 1. PIA routine. 


10 REM DIMMER CONTROL ROUTINE 

20 REM ESTABLISH USER PROGRAM LOCATION 

30 POKE (103,30) 

40 POKE (104,175) 

50 REM NOW INPUT DIMNCR LEVEL 
60 INPUT "LEVEL" ,X 
70 IF X > 255 THEN 60 
80 REM INVERT THIS VALUE 
90 LET Z=255-X 
100 POKE ( 7869, Z ) 

110 REM CALL USER ROUTINE 
120 LET A=USER(Z) 

130 REM PRINT D IMMER LEVEL ON SCREEN 

140 LET Q=255-A 

150 PRINT 

160 PRINT Q 

170 GOTO 60 

180 END 

Listing 2. 


Relocating the routine is no problem, but 
remember to clearly identify the data byte’s 
storage location. For PIAs not at $8008, 
alter the program’s address calls. Notice, 
too, that the circuit in Fig. 2 inverts the PIA’s 
output, which means that data byte must be 
a complement value. 

If you change the last instruction of the 
listing to RTI (39), the routine will work nice- 
ly in the user space of SWTP BASIC. To pro- 
gram dimmer output, poke an appropriate 
decimal value (0 to 255) into the data loca- 
tion and jump to the user routine. Control 
returns to the BASIC interpreter after the 
PIA has latched. Dimmer output remains 


stable until another command reactivates 
the DAC. 

Listing 2 is an example of how POKE 
commands can interact with Listing 1. In 
this case, the program has been relocated 
to $1EAF, the beginning of user space in 
SWTP BASIC (ver 2.0). The first two instruc- 
tions poke the address of the user routine 
into memory locations $67 and $68. This 
tells the interpreter where to transfer con- 
trol when using the user command. The in- 
put instruction requests a dimmer “level,” 
which must be entered in decimal format (0 
to 255). This value is inverted and poked into 
$1EBD. The dimmer level then appears on 
the terminal’s screen, and the program re- 
quests another input. 

User routines can be frustrating, espe- 
cially when coupled with POKE instruc- 
tions. One mistake can cause the inter- 
preter to self-destruct or damage the user 
program. Some protection can be afforded 
by carefully defining user space in advance. 
With SWTP BASIC, for example, start the 
process by initializing the interpreter to 


UCSD* System for TRS-80 Model 11+ 

The most portable operating system now supports FORTRAN. Pascal and/or FORTRAN modules are compiled in universal P-code, so they 
can run on most microprocessors, often without recompiling. Programs execute up to 10 times faster than comparable BASIC programs, and 
use much less memory. Ready to run on TRS-80 Model II (64K). 


FEATURES 

■ Interactive operating system-dynamic 
overlays, disk file handling, run-time sup- 
port and block I/O routines. 

■ Fast, one pass compilers. 

■ Two Editors-one screen oriented for pro- 
gramming and text editing, one character 
oriented for hard copy terminals. 

■ File handler to manipulate disk files. 

■ Macro-assembler that produces code for 
linking with Pascal or Fortran programs. 

■ Linker for link-editing of object and as- 
sembly code modules. 

■ Library of program modules and utilities. 


PLUS, from PCD Systems 

■ Disk formatting program to initialize dis- 
kettes in single or double density formats. 

■ Configuration program for serial I/O. 

■ Disk-set program to permit separate as- 
signment of density and format charac- 
teristics for each disk drive. 

DOCUMENTATION 

■ UCSD System Manual (400 pages). 

■ Beginner's Guide To UCSD Pascal. 

■ Pascal User Manual & Report. 

■ Fortran User's Manual with Fortran 
systems. 


PRICES 

■ UCSD System with Pascal Compiler $350 
with Pascal and Fortran Compilers $500 

■ Fortran Compiler alone 

(requires Version 1 1.0) $200 

■ P-Code Interpreter alone 

(either LSI-11 or Z-80) $ 85 

Optional Utility Programs 

■ CP/M* to Pascal file conversion $ 50 

■ TRSDOS + to Pascal file conversion $ 50 

■ Z-80 Disassembler/Dump program $ 50 

ALSO AVAILABLE 

■ UCSD System for MINC § or PDT S . 

■ Z-80 Adaptable System (you write BIOS). 

■ UCSD System for CP/M environments. 

PCD Systems is a licensed distributor of the 
UCSD System for Pascal and Fortran. Dealer 
inquiries are invited. 


PCD Systems, Inc. 

PO Box 143 PennYan, NY 14527 315-536-3734 

’‘Trademark of the Regents of the University of California f Trademark of Tandy Corporation ‘Trademark of Digital Research ’Trademark ot Digital Equipment Corporation 


98 Microcomputing, October 1980 


is 240 



2JC 


SAY kilobaud 

MERRY CHRISTMAS with MTCROCOMPUTING 

Kilobaud MICROCOMPUTING offers the reader: 

more pages of articles monthly than any other microcomputing journal 
reviews, programs, applications, projects 
and ways to save hundreds of dollars 

Kilobaud MICROCOMPUTING offers you a great way to say MERRY CHRISTMAS. 


What better way to say 
MERRY CHRISTMAS to: 
your friend 
your boss 

your business associate 
even your father-in-law 
than with a subscription to 
Kilobaud MICROCOMPUTING. 


Yes, I'll give a year of Kilobaud Microcomputing for Christmas (1 year/$25.00) 

My Name 

Address 

City 


Please enter a one year gift subscription to: 
Name 


State 


_Zip_ 


Address, 
City 


State 


_Zip_ 


Canadian $27/1 year only. US funds. Foreign $35/1 year only. US funds. 

Kilobaud Microcomputing • Box 997 • Farmingdale NY 11737 
All Christmas gift subscriptions will begin with the January 1981 issue. 


30AB7 


verify the cassette load. After this, manual- 
ly reset the computer and allocate user 
space by placing the desired byte in $104E. 
Complete the sequence by exercising a 
hard rather than a soft start. This procedure 
forces BASIC to recognize the new param- 
eters that distinguish user space from 
memory dedicated to normal variable and 
program storage. 

The principles expressed in these ex- 
amples can be applied to more complex 
programs that simultaneously control 
several dimmers. To do so, however, re- 
quires that the detailed work of controlling 
and selecting dimmers must be ac- 
complished by efficient user routines. The 
BASIC interpreter may be easy to work with, 
but, in general, it is too slow to directly im- 
plement complex and fast-shifting lighting 
effects. 

Conclusion 

Here are some brief comments concern- 
ing the design philosophy surrounding this 
dimmer. One approach was the creation of 
a purely digital dimmer with the ability to in- 
terpret serial or parallel data commands; 
for certain applications this seemed keenly 
advantageous. In my case, however, a mix- 
ture of digital and linear techniques worked 
best. The need to utilize long remote-control 


lines was the deciding factor. To run 16 
analog lines from a computer is infinitely 
easier than extending and decoding 16 
serial lines. 

Also, consider the problems associated 
with implementing manual override when 
using serial data. At least the linear circuit 
makes manual or independent control easy 
to work with. You can even intermix manual 
and computer control by presetting the in- 
dependent potentiometer and driving it with 
the computer’s DAC. Try such intermixing 


with an ACIA or UART. 

In retrospect, then, this article shows 
how digital and linear techniques can 
merge to produce a versatile tool with many 
applications.! 


The author wishes to thank the San 
Diego State University Foundation, 
which helped support this work through 
a faculty grant-in-aid. 


D1 through D9- 1N4004 diode 

R15- 100,000 Ohms 

Cl — 470uF 50V electrolytic capacitor 

R16- 47,000 Ohms 

C2, C3.C4-.1uF 50V ceramic 

R17-330 Ohms 

C5 - ,1uF 600V 

R18 through R21 - 100,000 Ohms 

R1 -1000 Ohms 

R22— 100,000 Ohms PC trimmer 

R2-1000 Ohms 

R23— 68,000 Ohms 

R3-4700 Ohms 

Q1, Q2-2N2222 npn transistor 

R4-1000 Ohms 

Q3-2N3567 npn transistor 

R5- 220, 000 Ohms 

Q4-2N5445 40A triac, or T6420D 

R6- 10,000 Ohms 1% 

(isolated stud 40A triac) 

R7- 100,000 Ohms 

LI — IOOuH choke (current rating 

R8-470 Ohms 

dependent upon triac selection) 

R9 — 1500 Ohms 

IC1 — LM324 quad op amp 

R10 — 2000 Ohms PC trimmer 

IC2 — LM340T-12, + 12V regulator 

R1 1 - 100 Ohms 

IC3 — MCS2400 optical coupler 

R12- 100,000 Ohms 

T1 — power transformer, 12.6VAC 

R13-120 Ohms 

300mA secondary, PC mount 

R14-560 Ohms 

(Radio Shack 273-1385) 

Parts list. All resistors Va watt 10 percent, unless otherwise noted. 


Reader Service index — page 241 


Microcomputing, October 1980 99 




LOOKING FOR MODEL I 
AND MODEL II 

BUSINESS SOFTWARE? 

WE HAVE HUNDREDS 
OF QUALITY BUSINESS 


PROGRAMS IN STOCK! 
AT PRICES YOU CAN 

AFFORD. 


•WHERE YOUR TRS-80' MEANS BUSINESS’ 

For the first time you can fill most of your software needs with one telephone call. Whether you are 
trying to find a specific program, custom software or just help with your system — give us a call. 
Invoicing • Inventory Control • Accounts Payable • Accounts Receivable •Payroll •General 
Ledger • Letter Writer • Word Processing • Mailing • Manufacturing Inventory • Cost Account- 
ing • SalesReporting • Stock Market • Business Statistics • Statistical Analysis • Data Base 
Systems • Medical Billing • Dental Billing • Special Industries • Advanced Accounting • Income 
Tax • Language • Personal Finance • Technical Programs • Insurance • CPA • Law Office • Asset 
Depreciation • Job Cost • Utility Programs • Education • Games • Home Programs • Loans • 
Credit Bureau • Electronics • Test Systems • Sports • Art • DOS Systems • BASIC lessons • 
and much more! 


Send for our free catalog or give us a call today. We also do custom programs as well as buy top 
quality programs. 


Summer Special: 

Complete business system $299.95 




OVER <00 OF THE BEST 
DUSIHESS PROGRAMS FOR 
THE TRS-60* MODEL I 
AND MODEL II IH STOCK 

READY FOR 

IMMEDIATE DELIVERY. 


LET US ANSWER YOUR 
QUESTIONS TODAY. 

We now sells 

Structured Systems Group • Grohom Dorian • Magic Wond™ 

• Digital Research, Inc. • Osborne/McGraw Hill • Compiler 
Systems • Software Mart Software 

Software-Mart - 

24092 Pandora St • El Toro CA 92630 


In California Call (714) 768-7818 Call Toll Free 1 (800) 854-7115 

24 Hour Service 




VISA 


>UR DEST ADS ARE NOT WRITTEN — THEY'RE RUNNING ON TRS-80's 


II Software Mart Programs are sold on an “as is” basis and with “All Faults” Prices and programs are subject to change without notice. 

Magic Wand™ is a Trademark of Small Business Applications, Inc. 

*TRS-80 is a trademark of the Radio Shack Division of Tandy Corporation. 


r 





William E. Shawcross 
Roger W. Sinnott 
Sky Publishing Corporation 
49 Bay State Road 
Cambridge, MA 02238 

S ky and Telescope is a monthly 
astronomy magazine with a circulation 
of 75,000. Each month we generate 65,000 
mailing labels, an average of 10,000 renewal 
notices and a number of listings and mail- 
ing reports. All of this has to be done in less 
than a week. On top of this, there are typi- 
cally 5000 changes and additions to the file 
each month. 

Could a small computer handle this job? 
We wondered. One of us (Bill) had long been 
interested in the possibility, ever since coor- 
dinating the changes from a manual stencil 
system to a big IBM computer at a service 
bureau in 1969. But the hardware to do it 
ourselves remained too expensive until the 
microcomputer revolution of the mid-1970s. 


Out of the Blue 

Roughly three years ago, Ohio Scientific 
introduced the C3-B, a rack-mounted micro- 
computer with dual eight-inch floppy-disk 
drives and a 74-megabyte Winchester hard 
disk. Our data base, then almost ten mega- 
bytes, had been too large for floppies, but 
the Winchester was just right. We were for- 
tunate to have an OSI dealer in Cambridge, 
and so we visited Robert Rivers at the Com- 
puter Shop. A demonstration convinced us 
that the machine had enough speed and 
capability for our needs. 

And so a year ago, after 1 1/2 years of 
preparation, we transferred our mailing list 
from the IBM 360/30 at the service bureau to 
our own in-house OSI computer. We were 
looking primarily for convenience; we didn’t 
want to rely on the mails to get our 
subscription material (punched paper tape) 
back and forth from the service bureau. 
With our own computer, we would be able 
to put new subscribers on the system the 
day their names came in. We could also let 
the computer do a number of office jobs 
that for years we had done by hand. 

The major unknowns were reliability and 
file backup, which are critical in converting 
to an in-house computer. At the time, car- 
tridge-tape backup units were not available, 
and standard tape drives with formatters 
cost as much as the C3-B. 

A magazine article on computer repair 
led us to the solution of both reliability and 
backup -get two identical computers. This 
would let us keep the files in separate 
places (in our case, in separate buildings). 
Regular copying from one machine to the 
other would keep the backup file within a 
month of being up-to-date. And circuit 
boards could be swapped easily in a pinch. 

On this basis we took the plunge. We 


102 Microcomputing, October 1980 




Software Problem and Solution 

The first of these was learning, in minute 
detail, how the Microsoft BASIC interpreter 
interacts with large files on the OSI 


The service-bureau computer room, with numerous tape drives, where the Sky and Tele- 
scope subscriptions were processed between 1969 and 1979. It is operated by Computac, 
Inc., in West Lebanon, NH. The Sky and Telescope circulation department prepared 
punched paper tape (on a Friden Flexowriter) that was delivered to Computac weekly, 
containing all the names of new subscribers or renewals in machine-readable form. 


Changes are input, sorted and then pro- 
cessed against the tape. A new tape is 
made (on another tape drive) incorporating 
the changes. Such sorting and merging, 
however, is utterly impractical on a micro 
with a BASIC interpreter. We guessed that 
to merge two files to a third place on the 
disk would take us at least 20 hours for 
each weekly update. 

A double-size file that stays put on the 
disk was our solution. Here, on the average, 
every other record is a blank, or “hole.” 
Since our mailing list is in zip-code order, 
and names are alphabetical within each zip 
code, a binary search of about 17 seeks will 
find a record that needs revising in about 
six seconds. If a new subscriber is to be in- 
serted, the same amount of time will locate 
the appropriate hole. Occasionally, a bit of 
spreading is needed to make room for the 
new person, if some records are bunched 
together. Our updating program does this 
automatically. 

In essence, we have an on-line system 
that is run from floppy disks rather than 
directly from the keyboard. Since an audit- 
trail report is needed for all file transactions 
to satisfy the Internal Revenue Service and 
the postal system, putting the work on a 
floppy first means that the line printer does 
not have to be running except when the 
floppies are being processed against the 
master file (about 30 minutes, at the end of 
each day’s work). And since the data base is 
copied to the backup computer only once a 
month, we save four weeks of floppies in 
case the primary computer should ever fail. 
A floppy-based system thus has many im- 


The new OSI C3-B computer, Printronix 300 and a Soroc terminal by which the same job is 
now done more efficiently in-house at Sky and Telescope. (Photos by Dennis diCicco) 


bought the first computer in August 1978, 
and the second one the following February. 
We ordered a Printronix 600 line printer (600 
lines per minute) but eventually had to set- 
tle for a Printronix 300. We bought a used 
Centronics 100 printer with the first com- 
puter so we could do development work. 
Our suite of equipment was rounded out 
with a Tab miniburster (with slitter), Tab 
decollator, a Hazeltine 1500 terminal and 
three Soroc IQ-120 terminals. The total cost 
was around $45,000. 

Getting the equipment was just the start. 
The real effort had to go into programming, 
which proved very time-consuming. 

Neither of us was completely new to 
computers. Bill had gone to programming 
school and had put together one of the very 
first Altair 8800 kits. Roger had bought the 
Altair from Bill and learned North Star 
BASIC on it. Bill took over project manage- 
ment and definition, and Roger gave up 
some of his editorial duties so he could 
spend about half his time on programming. 
The project took a whole year. 

In the late 1960s, Bill had helped define 
the functions of the mailing package used 
by our service bureau, and therefore knew 
what it did and how it did it. We assumed it 
would be a fairly easy matter to duplicate 
the functions of the big computer. But there 
were two areas in which we badly under- 
estimated how much work we had to do. 


74-megabyte disk. For most hacking this is 
not a serious matter, but when you’re trying 
to design as efficient a system as possible, 
everything counts. For example, Roger 
eventually found a way of copying large 
files that runs three times faster than the 
copying utility supplied by OSI. 

On a large mainframe computer, a maga- 
zine subscription list is usually kept in 
serial order on a reel of magnetic tape. 


Microcomputing, October 1980 103 





portant advantages. 

File Transfer 

Our second major problem was getting 
our data base out of IBM-land and onto our 
own machine. We thought of a number of 
possibilities: punched paper tape (16 miles 
of it), the telephone (90 hours of long- 
distance charges), a 1/2-inch computer tape 
(rental drives not readily interfaced to OSI) 
and rekeyboarding all the names and ad- 
dresses (1000 hours for a good typist). 

Floppy disks seemed the only possibility, 
but there was a catch here too. Our service 
bureau could supply the file on eight-inch 
floppies, recorded in the standard IBM for- 
mat of 128 bytes per sector, 26 sectors per 
track. OSI uses the same hardware but a dif- 
ferent format. In fact, OSI’s format seems to 
be unique in the industry, so buying soft- 
ware from other sources is difficult. 

Here Roger’s Altair came to the rescue. 
We bought a Tarbell S-100 disk-controller 
board and attached the OSI floppy drives to 
the Altair. A word of caution: OSI supplies 
the -5 volts from the CPU power supply 
through the connecting ribbon cable, rather 
than from the floppies’ own power supply. 
This caused us a major headache until 
Roger traced the problem down. 

An assembly-language routine for the 
Altair read each track-size block of 13 
names and addresses from a floppy into 
RAM, inserted ASCII carriage returns in all 
the right places and sent them out a serial 
port at 9600 baud to the OSI computer. 
There, a BASIC program accepted each 
character string in turn and sent a hand- 
shaking character back to the Altair when it 
was ready for the next string. (This was 
necessary because the Microsoft BASIC in- 
terpreter seemed to take unpredictable 
amounts of time to assimilate the strings as 
they came in.) 

When 13 names and addresses had been 
transferred, the OSI computer paused for 
half a second to store them sequentially on 
the hard disk and asked for more. The Altair 
then read in the next higher track, and so 
on. Proceeding in this manner, the two com- 
puters worked without intervention for 
about seven minutes to transfer all 949 
names on a floppy. It was a complicated 
operation, to be sure, but when things were 
going smoothly it was spectacular to 
watch! 

In this way the file was transferred, at a 
mere cost of $250 for the Tarbell board and 
$200 to the service bureau to have them put 
the file on 69 floppy disks we had provided 
(and which we are now reusing for our daily 
work). We did the transfer when our other 
software was essentially done, so that we 
could try out our own system in parallel with 
that of the service bureau for a couple of 
months to be sure the results were the 


same. Six months is usually recommended, 
but the duplication of several thousand 
transactions a month was putting a severe 
strain on our circulation department of just 
three people. Fortunately, all went well, and 
we were able to complete the changeover in 
November 1979. We have been self-suffi- 
cient ever since. 

System Operation 

As it now stands, our system lets us enter 
on floppies new subscriptions, renewals, 
address changes and deletions. This can be 
done with more than one terminal at once, if 
necessary, thanks to the OSI time-sharing 
option. The operator can request adhesive 
mailing labels to be printed so the current 
issue of the magazine can be sent im- 
mediately -something that used to be 
done by hand. 

We also have two programs for locating 
particular people in the file. The first uses 
the same binary search technique men- 
tioned earlier. If you know a subscriber’s zip 
code and a few letters of the last name, the 
record can be called up in six to seven 
seconds. (Sometimes the program tells you 
that the name is not currently in the file.) 

The second method sweeps through the 
file from any starting place to the end, look- 
ing for a specified character string of up to 
32 characters. Thus, for example, If 
Ebenezer Jones lives somewhere in Califor- 
nia, it makes sense to use his first name as 
the search string and to start looking at zip 
code 90000. All too often, a person sends in 
a change of address with the old address 
missing! This kind of search, from one end 
of our 23 megabyte file to the other, can 
take as long as 18 minutes. 

Along with renewal notices and mailing 
labels, the system produces a monthly 
geographical breakdown by zip code, used 
for postal reports, and various file dumps. 
We also make a printout each month of the 
names of people who decided not to renew; 
this list can be used at a later date, in case 
we want to do a selective mail campaign. 

We still need to speed up the file transfer 
between the two machines. This procedure 
now takes about 3 1/2 hours at 19,200 baud 
over a 100-foot coaxial cable. The OSI serial 
ports can be jumpered for 250,000 or even 
500,000 baud as soon as we find time to 
write the assembly-language handlers for 
synchronous data transfer. This should cut 
the time to under half an hour for the 23 
megabytes. 

Extraterrestrial Applications 

We have found other uses for all this 
computing equipment. One nice feature of 
the Printronix 300 is its ability to serve as a 
plotter. Roger has written a program that 
prints out a chart showing the motions of 
Saturn’s moons; all we do is add labels and 


send it off to the camera department for use 
in Sky and Telescope. Most days of the 
month, the second (backup) computer is 
available for use by our scientific staff. 

Another area in which the computer 
helps is our advertising billing and ac- 
counts receivable -a sizable portion of our 
income. For this we bought the OSI Data 
Management System nucleus and modified 
parts of it to print our bill forms. This soft- 
ware may not be the fastest or most elegant 
in the world, but it is dependable, easy to 
work with and reasonably priced ($300). It 
has general-report writers and file handlers, 
allowing easy maintenance of a small ad- 
vertiser mailing list. We also have a 
separate dealers file for addressing the new 
price lists of the books we sell. 

A Successful Flight 

We have faced few difficulties since the 
changeover — and none that has caused us 
to miss a schedule. This is probably due in 
large measure to the fact that we know a lot 
about our equipment, and everything there 
is to know about our subscription pro- 
grams. The usual memory glitches (chips 
go bad from time to time) and a dead LED in 
a floppy drive (it couldn’t find the index hole) 
are the only equipment failures we have had 
in two years. 

We had some strange error messages 
and the like when the computer-room 
temperature rose above 80 degrees 
Fahrenheit. The equipment behaves 
strangely at such temperatures, so we now 
use air conditioning when needed to keep 
the room from getting warmer than 75 
degrees. 

Also, though the OSI manuals warn 
against shutting off the CPU before the 
hard disk, we have inevitably done this ac- 
cidentally a couple of times. Sometimes it 
doesn’t have any effect, and other times it 
wipes out the operating system on the disk 
and forces us to get the backup floppy out 
of a vault. (Why can’t the equipment be 
designed so that it doesn’t matter how you 
shut it off?) 

A dependable dealer nearby is a great 
help. Bob Rivers at the Cambridge Com- 
puter Shop and Ed Craddock at the Boston 
branch have helped us often both with sug- 
gestions and new software releases. 

Make a careful estimate of how long it 
will take to program an application and then 
double or triple the time. Don’t get yourself 
into a corner with rigid scheduling -equip- 
ment is seldom delivered as soon as you ex- 
pect, and software is almost never released 
on the date first announced. Anticipate be- 
ing discouraged and ready to give up every 
now and then, particularly during the de- 
velopment phase. 

And, above all, enjoy the satisfaction of a 
difficult project finally brought to fruition. ■ 


104 Microcomputing, October 1980 




Now You Can Put a 
TRS-80 Computer 

Tn Va«i< Pnrlrofl 


WEIGHS ONLY 6 OUNCES! 

Another Radio Shack Personal Computer Breakthrough! 


Now you can carry computer 
power wherever you go. And with 
the TRS-80 Pocket Computer, you 
can create your own programs or 
purchase ours. These are available 
now: Civil Engineering, Aviation, 
Business Statistics, Games, Per- 
sonal Finance, Math Drill, and Real 
Estate. 

Look At These Exciting Features! 
57-key alphanumeric keyboard. 
Big LCD display that scrolls left and 
right for program line entry and ed- 
iting, and steps up and down for 
program listing. Programmable in 
an enhanced, easy-to-leam BASIC 
language. Built-in arithmetic func- 
tions including trig and inverse trig 
(with readout in degrees, radians 
or gradians) log, exponent, square 
root, angular conversions, integers 
and absolute values. Accuracy is to 
10 digits and it can handle 2 -digit 


exponents. With array and 7-char- 
acter string-handling ability you’ve 
really got a handful of computa- 
tional power! 

Programs and Data Retained in 
Memory When Power Is Off! The 
1424-step memory is automati- 
cally partitioned for program and 
data storage. There’s a 26-data ele- 
ment memory and 48-step reserv- 
able memory. 

Available Now! Exclusively at 
Radio Shack stores, dealers and 
Computer Centers. Complete with 
carry case, manual, batteries. 
Hurry, because everyone will want 
this sensational new computer. 
And what could make a better or 
more unique Christmas gift? 


Nothing Else You Can Put In 
Your Pocket Can Do All This! 

10 Print "SHELL METZNER SORT": FOR X = 1 TO 100: 

PAUSE "DATA ITEM #":X:INPUT A(X + 100): IF A(X + 100 
)<0 GOTO 25 
20 NEXTX 
25 M = X - 1 

30 M = INT(M/2): IF M = 0 GOT0 107 
40J = 1:K = X- M-1 
50 I = J 

60 BEEP 1 : L = I + M: IF (A(l + 100)< = A(L + 100)) 

GOTO100 

70 T - A(l + 100): A(l + 100) = A(L + 100): 

A(L + 100) = T: I = I M: IF l<1 GOTO 100 
90 GOTO 60 

100 J = J + 1: IF J>K GOTO 30 
105 GOTO 50 

107 BEEP 5: INPUT "PRESS ENTER FOR LIST"; A 
110 FOR I =1T0X - 1: J = I + 100: PAUSE "DATA ITEM #"; 
USING "####"; I; ” ”;A(J): NEXT I 

I SendMe YourlREE 
TRS-80 Computer Catalog! 

Radio Shack, Dept. 81-A-23 
I 1300 One Tandy Center 
Fort Worth, Texas 76102 


NAME 


TITLE 


FIRM 


Radio /haek 

The biggest name in little computers® 



STREET 


CITY 

STATE 

ZIP 

PHONE 


’Retail prices may vary from store to store. Optional Cassette 
Interface, $49. Minisette-9 Cassette Recorder. $79.95. 



A New Branch 
On the Family Tree 


National Semiconductor sprouts the NSC800. 


Ken Barbier 
Borrego Engineering 
PO Box 1253 

Borrego Springs, CA 92004 


T he recently announced 
NSC800 microcomputer 
system from National Semicon- 
ductor represents a new branch 
on the 8080 family tree. It com- 
bines the best features of the 
8080, the 8085 and the Z-80 with 
a new fabrication technique 
called poly CMOS. This pro- 
prietary new process (tagged 
“P 2 CMOS” by National) com- 
bines the speed of NMOS cir- 
cuits with the low power con- 
sumption of CMOS. 

Initial offerings in this prod- 
uct line include the NSC800 
CPU, the NSC810 RAM-l/O-timer 
and the NSC830 ROM-I/O. All 
three are constructed using the 
same low-power P 2 CMOS. This 
chip set can be combined into a 
complete controller consisting 
of the three 40-pin packages, a 
crystal, one resistor and a 
capacitor. 

This combination provides 2K 
bytes of ROM, 128 bytes of RAM 
and 32 bits of I/O that can be pro- 


grammed to be either inputs or 
outputs. Power required can 
vary from 3 to 12 V dc, and the 
low power drain would enable 
full-speed operation for two 
days from a battery back-up 
system consisting of three 
D-size nicad batteries. 

The familiar features of the 
new National microprocessor 
system should appeal to its 
users. The CPU uses the pin-out 
of the Intel 8085 and executes 
the entire Z-80 instruction set. 

Rather than trying to 
establish a new dynasty of its 
own, National wisely copied the 
best features of earlier 
members of the 8080 family. 
This means that users of the 
earlier 8080, 8085 and Z-80 will 
be instantly able to design hard- 
ware and write software for the 
new microprocessor. Existing 
development systems, assem- 
blers and PROM programmers 
can supply all the support re- 
quired for this new system. 

The NSC800 chip set and 
user’s manual were not 
available as this was written, 
but the prospective user can 
gain valuable insight into 
techniques usable with the 
NSC800 by looking back at its 
predecessors. The reasoning 


behind National Semiconduc- 
tor’s decision to merge the pin 
configuration of the 8085 with 
the instruction set of the Z-80 
unfolds as we look back at the 
history and evolution of the 8080 
microprocessor family. 

The Roots: Intel’s 8080 

The 8008 microprocessor was 
relatively insignificant com- 
pared to its big brother, the 
8080. Since its introduction, the 
8080 and its descendants have 
become the standards of the 
microprocessor industry. If you 
don’t want to accept that fact, 
just look at the relative amounts 
of available software and the 
number of different computer 
systems based on the 8080 fami- 
ly, although other hnicros may 
provide features lacking in the 
’80 family. 

The 8080 was not the 
ultimate. To implement any 
8080-based system, the 8080 
central processor (CPU) has to 
be supported by a bi-phase, 
high-level clock generator; a 
system controller; and bus buf- 
fers. In spite of this, however, 
new products are still being in- 
troduced based on the 8080, 
even though its successors pro- 
vide greatly expanded capability 


combined with reduced com- 
plexity. 

To eliminate some of the 
8080’s support requirements, as 
well as add expanded capabili- 
ty, Zi log’s Z-80 and the Intel 8085 
have since appeared. These 
micros are upward compatible 
with the ’80, executing the same 
instructions as the 8080 and 
adding instructions of their own. 

The Z-80 Instruction Mountain 

The original designers of the 
8080 used 244 out of the 256 
possible combinations of eight 
bits as the basic instruction set. 
This left the door open a crack 
for the Zilog Z-80 designers to 
take advantage of the 12 un- 
implemented operation codes 
(op codes) to greatly expand the 
instruction set. With a couple of 
exceptions, this required a dou- 
ble level of instruction de- 
coding. 

The first eight-bit byte of the 
expanded instruction set tells 
the decoder that it will have to 
fetch an additional eight bits 
from the next memory location 
and decode that second byte to 
determine the desired opera- 
tion. In this manner, 8-, 16-, 
24- and 32-bit op codes have 
been implemented in the Z-80, at 


106 Microcomputing, October 1980 



the expense of additional 
memory fetches and execution 
time. Where speed is critical, as 
in servicing interrupts, the Z-80 
executes two new single-byte in- 
structions, the register ex- 
changes EXX and EX AF. 

The new multi-byte op codes 
implement functions that would 
have required many instruction 
and data fetches anyway, such 
as block data moves and bit 
manipulations, so there is still a 
net gain in efficiency in spite of 
the multiple-level decoding re- 
quired by this technique. 

While the major advantage of 
the Z-80 over the 8080 is the ex- 
pansion of the instruction set, it 
also provides simplified inter- 
facing to the outside world. Only 
a single-phase clock is required, 
and more usable bus control 
signals are provided by the CPU. 

The 8085 

Perhaps in answer to the ad- 
vent of the Z-80, Intel next in- 
troduced the 8085 microproces- 
sor. At first glance, the ’85 
almost seems to be a step in the 
wrong direction. Adding only 
two instructions to the 8080 op 
code set, it is a far cry from the 
Z-80’s mountain of new op 
codes. The 8085 shines in the 


simplicity of implementing 
small systems, such as dedicat- 
ed controllers. 

The 8085 doesn’t require an 
external clock generator. Simply 
connect a crystal across pins 1 
and 2 to operate the ’85. It even 
provides buffered clock output 
for other uses, such as supply- 


ing a bus clock or an input to a 
baud rate generator. If crystal 
timing accuracy is not required, 
substitute ten cents’ worth of 
resistor and capacitor for the 
crystal. 

For controlling the real world 
in real time, the ’85 provides five 
different hardware interrupts 
accessible through individual 
pins and, in addition, can still 
support the multilevel priority in- 
terrupts that are implemented in 
8080 and Z-80 systems (as well 
as 8085 systems) by the addition 
of a separate interrupt con- 
troller. If five levels of hardware 
interrupt are enough for a par- 
ticular application, however, all 
are instantly available at 
separate pins on the 8085. 

Additional simplification is 
provided by the inclusion in the 
’85 of “serial” input and output 
ports — in actuality, a one-bit in- 
put and a one-bit output port. In 
many applications, a “software 
UART” program can be written 
to make use of the serial I/O 
lines and emulate the hardware 
baud rate generator, crystal and 
UART chip usually required for 
communication with a terminal 
device. 

Several of the functions of the 
8080’s system controller are im- 
plemented internally in the ’85, 
providing signals for controlling 
the flow of data to and from 


memory and I/O devices. If more 
detailed CPU status information 
is required, status lines are also 
available, as was provided by 
the 8080’s controller. 

If the ’85 is used with older 
8080-style peripherals or 
memory, these status lines may 
have to be decoded to provide 
full 8080 compatibility. How- 
ever, all newer memory and pe- 
ripheral controllers are fully 
compatible with the ’85 bus con- 
trol signals, and the status out- 
put pins can be ignored in new 
designs. The one exception is 
shown in Fig. 1, where the 
status lines and a single NOR 
gate are used to light a “halt” in- 
dicator. 

The Multiplexed Bus 

To free enough pins in the 
standard 40-pin DIP package to 
provide for all these 8085 
features, the eight-bit data and 
16-bit address buses of the 8080 
and Z-80 have been combined in- 
to a multiplexed eight-bit data- 
and-low-address bus and a non- 
multiplexed eight-bit high- 
address bus. An additional 
strobe comes out of the ’85 on 
pin 30 to separate the data from 
the low-address bits on the 
multiplexed bus. 

In any system — large or 
small— it is necessary to output 
a stable address before data 


+ 5V 



Fig. 1. CPU section of a maximum-size microcomputer based on the 8085. The four 20-pin ICs shown on 
the right can provide all the address, data and control lines for systems with up to 64K bytes of memory 
and 256 I/O ports. Five vectored interrupts are available without the need for external interrupt con- 
trollers. All 40 pins on the 8085 package are used in the configuration. 


Microcomputing, October 1980 107 






1-6 MHz 
-r CRYSTAL 


♦5V 

< . 

:• iok 


vcc 

CLK 

RESET OUT 
REAOY 
AIO 
A9 


^ 25/iF 


TRAP 
RST T 5 
RST 6 3 
RST 5 3 
INTR 


T 


8085 

CPU 


A07 
AD6 
AD 5 
AD4 
AD3 
AO 2 
ADI 
ADO 
ALE 
10/M 


CE VCC IOR 

CLK PAO 

RESET PA I 

READY PA2 

AIO PA 3 

A9 0755 PA4 

A8 2K PA 5 

A07 EPROM/ pA6 

AD6 


10 


AD5 

ADA 

AD3 

AD2 

ADI 

ADO 

ALE 

10/M 

RD 


IOW 

CE VOO VSS 

U4 


PROGRAMMABLE 

INPUT/OUTPUT 

LINES 


Fig. 2. A minimum-size controller based on the 8085 microprocessor. 
The 8755 is a 2K byte ultraviolet erasable EPROM combined with two 
8-bit input-output ports. For “ RAM-less ” applications, where CPU 
registers can supply sufficient read-write storage, the components 
shown here can comprise a complete controller operating from a 
single + 5 V dc supply. 


Device 

Package 

Features 

8155 

8156 

40-pin DIP 

The 8155 and 8156 both provide 256 bytes of RAM, 
a 14-bit counter/timer, two eight-bit I/O ports and 
a six-bit I/O port. These two devices have comple- 
mentary chip enable levels, permitting them to be 
used together without external address decoding. 

8185 

18-pin DIP 

A IK byte static RAM in a small package, made 
possible by bus multiplexing. 

8355 

40-pin DIP 

2K bytes of mask-programmable ROM; two eight- 
bit I/O ports. 

8755 

40-pin DIP 

2K bytes of ultraviolet erasable EPROM; two eight- 
bit I/O ports. Pin compatible with the 8355, it 
permits program development for later inclusion in 
the 8355. 

Table 1. MCS-85 system single +5V supply peripherals with the 

multiplexed data/address bus. 


transfer can occur. This is true 
for read or write, memory or I/O 
operations. For this reason, 
there is no loss of time resulting 
from multiplexing address and 
data. The 16-bit address ap- 
pears on the address bus (bits 
A8 through A15) and address- 
data bus (bits ADO through AD7) 
along with an address latch 
enable (ALE) strobe used to save 
the low-order address bits in ex- 
ternal hardware. With the ad- 
dress stable, and following the 
ALE, the AD bits are used as a 
bidirectional data bus, just as in 
the 8080 and Z-80. 

In minimum systems, a 
number of multiplexed-bus 
peripheral circuits use the ALE 
signal to differentiate between 
address and data information 
sequentially applied to the same 
eight pins. Fig. 2 shows that no 
external components are re- 
quired to implement such a 
minimum system. Compatible 
peripheral chips can provide 
RAM, ROM or EPROM memory, 
combined with counters, timers 
and I/O lines (see Table 1). 

In larger systems— with more 
RAM and ROM memory— the 
address and data buses from 
the CPU have to be buffered in 
any case, so there is no increase 
in package count between the 
8085 bus and that of the 8080 or 
Z-80. The only difference is that 
an octal latch (8212 or 74LS273) 
replaces a bus buffer, and at lit- 
tle or no increase in cost. Fig. 1 


shows the nucleus of a large 
system, with fully buffered ad- 
dress, data and control lines. 

The NSC800 

The 8080 instruction set has 
become the industry standard. If 
you examine programs written 
for the Z-80, you will see that too 
many programmers use few, if 
any, of the Z’s additional in- 
structions. Many reasons exist 
for this deplorable situation: no 
Z-80 assembler available on old- 
er development systems, the dif- 
ficulty of converting to a new 
set of mnemonics or just plain 
lethargy. 

If you aren’t using the extra in- 
structions anyway, the recent 
price reductions and more 
widespread availability of the 
8085 and compatible periph- 
erals have made the 8085 more 
attractive. Designing hardware 
based on the ’85 is a snap, and 
managers just love the low 
package counts that result, but 
if only it contained the Z-80 op 
codes! 

Sprouting a new trunk on the 
8080 family tree, National Semi- 
conductor has combined the 
super pin-out of the 8085 with 
Z-80 instructions. Now you can 
have the ’85 pin-out, with its 
five instant hardware interrupts, 
serial I/O and single component 
clock generator, and the Z-80 in- 
struction set executing at one 
million instructions a second, 
run by flashlight batteries! ■ 


RESOLUTION 

005" 


DIGITAL 

PLOTTER 

PRINTERS 

COLOR GRAPHICS FROM 
SMALL PLOTTERS WITH 
DIG IDEAS. 

But draw the line on price. That’s practical! 

232 SERIAL IN 

FROM $310. SOFTWARE FURNISHED 

WRITE FOR DETAILS TO 
X- Y ENTERPRISES P.O. BOX 796 
HUNTSVILLE. ALA. 35804 ^337 



UPDATE: 
<TRS-80 * & ISS! 


INCREASE YOUR TRS-80* 
CAPABILITIES 

WITH OUR QUALITY PRODUCTS 

• COLOR GRAPHICS BOARDS: 

Model C-1000 $129 95 

Model C-2000. $189 95 

Model C-3000. S329 95 

• lower case BOARD $41 95 

• PROTOTYPE BOARD $34 50 

ADD S3 00 POSTAGE And HANDLING 

Dealer Inquiries Welcome! 

= = llinlc0§lpalcecil ^ 138 Mn. Residents 

E =§eipwoce Add 4% Sa,es Tax 

= =§y§lbeim§ Jlinp., — — . 

1011 WEST BROADWAY VfSA' 

MINNEAPOLIS, MN., 55411 

(612) 522-6631 “Trademark of Tandy Corp- 



108 Microcomputing, October 1980 




PAGE FOR PAGE . . . 
KILOBAUD 
MICROCOMPUTING 
OFFERS YOU MORE. 

Go ahead, count them . . . Kilobaud Microcomputing has more pages of articles 
each month than any other computer magazine. Articles that keep you in touch with 
the industry whether you’re a rank beginner or an advanced hobbyist. 

By reading the articles in Kilobaud Microcomputing you’ll get to understand how 
computers work, how they can save you money in your business, what systems will 
be best for you, how the various programming languages work, what is new in both 
equipment and programs . . . and you’ll learn how to write your own programs. 
You’ll find hundreds of dollars of computer programs listed in the magazine . . . pro- 
grams you can use for business and entertainment ... or education. 

Subscribe to Kilobaud Microcomputing today . . . with more articles (and better arti- 
cles) than any other microcomputing journal, page for page you get more for your 
money. 

OK — Sign me up for the industry’s #1 value . . . 

□ New Subscriber □ Renewal 

□ 1 yr./$25.00 02 yrs./$38.00 D3 yrs./$53.00 

□ Payment enclosed Bill: QMe □ Master Charge DVisa □Amerex 

Card# Expire Date 

Signature Interbank # 

Name 

Address 

City State Zip 

Canadian — $27.00 for 1 year only in CJS funds. Foreign — $35.00 1 year only In CJS funds. Please allow 6-0 weeks for delivery 

• PO Box 997 • Farmingdale NY 1 1 737 


Microcomputing, October 1980 109 


ivmiii srmii/Fiim 

bursts nssmislnn [taidaMn 


Readers will recall that last 
month in this newsletter we an- 
nounced the advent of the Exa- 
tron Stringy/Floppy for the 
PET. Did YOU feel left out? 
Weil. . . . 

THE APPLE ES/F 
IS HERE!! 

The Exatron Stringy/ Floppy - 
ES/F for short-is a mass storage 
subsystem for microcomputers. 
It does what an audio cassette 
machine does, but with very 
high reliability, and high speed. 
It does what a floppy disk sub- 
system does, a little slower and 
is half the cost. It’s a way to 
store all your programs, both 
BASIC and machine language, 
quickly and surely, ready to load 
back into memory in a few 
seconds when needed. It has its 
own operating system, and is a 
superior way to handle the stor- 
age for your word processing 
tasks, software systems develop- 
ment projects, and data files for 
data processing routines. Seeing 
one of these remarkable micro- 
peripherals in action will con- 
vince you! 


WHERE DID IT COME FROM? 


The Apple ES/F has a good 
pedigree. The Stringy/ Floppy 
was introduced at the 2d West 
Coast Computer Faire in Feb- 
ruary 1978, for the S-100 bus. 
Later that year the ES/F for the 
SS-50 bus and the 6800 was per- 
fected. In May 1979 the first 
ES/F for the TRS-80 was in- 
troduced at the 4 th West Coast 
Computer Faire. Early in 1980 
the ES/F with the RS-232 inter- 
face was on the market, followed 
by one for the PET. Exatron has 
been manufacturing handlers and 
test equipment for the elec- 
tronics industry for many years, 
and brings those high standards 
to the development and manu- 
facture of the Stringy/Floppy. 


WHAT DOES IT CONSIST OF? 


The Apple ES/F consists of 
everything you need: a Drive 
Module, a Controller Card to in- 
sert in one of the Apple card 


Secretary , Fred Waters 
slots, a flat ribbon cable connect- 
ing the two, and miniature tape 
cartridges called wafers. The 
Drive Module is housed in an 
attractive case to match your 
Apple; inside are the drive motor, 
the read and write tape heads, 
the read/write electronics, and 
operating controls for tape po- 
sitioning and write protection. 
On the front face are the drive 
slot where you insert the wafer 
for SAVE or LOAD, and two 
indicator LEDs. The Controller 
Card contains the interface elec- 
tronics for the Apple, and a 
ROM holding a bootstrap loader 
to load in the programs which 
make up the Stringy Operating 
System-SOS for short. 

The Stringy/Floppy is phys- 
ically integrated into your Apple 
II or Apple II Plus simply by in- 
serting the ES/F Card into one 
of the card slots. It uses very little 
power, all of which is provided 
by the Apple bus. 

The wafers are small tape 
cartridges 68mm x 4 0mm -two 
thirds the size of a business card 
-and 4.5mm thick. Inside is a 
continuous loop of digital qual- 
ity tape in varying lengths from 
5 feet to 75 feet providing dif- 
ferent storage capacities. The 
wafer case is entirely enclosed 
except for a small slot where 
the drive capstan fits and another 
for contact with the tape head, 
for protection from handling and 
foreign particles. With each ES/F 
comes one wafer with SOS on 
tape, and a number of blank 
wafers for you to SAVE pro- 
grams on. 

The initial configuration has 
one Controller Card and one 
Drive Module. However the Con- 
troller will operate two Drives— 
all you do is connect the second 
unit. You can add as many Con- 
troller Cards as you have slots 
for-each one will allow two 
more drives. 

WHAT WILL IT DO? 

When the SOS (Stringy Op- 
erating System) is loaded into 
Apple memory by the bootstrap 
loader in ROM, it integrates it- 
self into your BASIC-whether 
Integer or Applesoft-and re- 
turns you to the BASIC prompt. 


If you have any questions about these products, about Exatron or 
about ES/FOA call the Hot Line. Address letters to ES/FOA, 181 
Commercial Avenue, Sunnyvale, CA 94086. 

Stringy/Floppy is a trademark of Exatron Corporation. 


You now have everything you 
had before in the way of BASIC 
commands, statements, and op- 
eration, with the addition of the 
complete SOS and all the ES/F 
commands. The ES/F commands 
will SAVE, LOAD, and RUN 
(load with autostart) programs 
in BASIC (either one or both); 
they will SAVE, LOAD, and 
RUN programs or data in binary 
(machine code); they will select 
either BASIC as desired when 
you have both in your Apple; 
and one command, CATALOG, 
displays a complete directory of 
the contents of a wafer. 

The directory shows the posi- 
tion of each file on tape, the 
file type (Applesoft, Integer, or 
Binary), the starting address, 
the length of the file in bytes, 
and the file name. The SAVE 
commands include optional pa- 
rameters for slot number, drive 
number, file position, and VERI- 
FY. With VERIFY, SOS will 
SAVE the file with the nec- 
essary parameters, and then run 
the tape around the continuous 
loop and compare the file just 
SAVEd against memory. When 
you SAVE your programs this 
way, you KNOW you have them 
right on the wafer! File names 
can be up to 30 alphanumeric 
characters-you don’t have to 
correlate numbers and names 
separately. 

HOW WELL DOES IT DO IT? 

Here are some of the features, 
and what they will do for you. 
You’re already familiar with the 
seemingly interminable delays in 
loading a program from audio 
cassette. The Apple ES/F saves 
and loads program material at 
16,000 baud, or roughly 2K 
bytes per second. Tape speed is 
10 inches per second. This means 
that you can save 10K bytes 
on the 5-foot wafer, and the 
ES/F will save and load this 
much material in six seconds! 

What about reliability? Well, 
once you have certified a new 
wafer, it has a life expectancy 
of at least 10,000 passes. The 
error rate is so low that you may 
use the ES/F for weeks without 
ever running into a read or write 
error. There is a write-protect 


HOT LINE 

WITHIN CALIFORNIA 


feature built into the ES/F to 
help you avoid operating errors. 

Since the ES/F was designed 
from the ground up to digital 
standards for use with industrial 
quality equipment, you are not 
handcuffed to using audio equip- 
ment, audio materials, or audio 
standards for your Apple. There 
are no buttons, knobs, or switch- 
es to adjust when you save or 
load programs. The operations 
are all controlled by the soft- 
ware, and are highly reliable. 


WHY DO YOU NEED TWO 
DISKS? 


Did you read Stutsman’s article 
on page 84 of Microcomputing 
for August? It’s titled “Why Do 
You Need Two Disks?” Jim 
Stutsman may never have tried 
out a Stringy/Floppy, but he 
puts forth some of the best 
arguments I’ve ever heard on why 
YOU need an ES/F. He wonders 
why (to paraphrase somewhat) 
we’d want to buy solutions to 
problems we’ve never had, and 
probably never will have. If 
you’re not satisfied with audio 
cassette standards for your high- 
quality computer, but don’t have 
the money to spend on one or 
two disks, check out the Exatron 
Stringy/ Floppy. It meets Stuts- 
man’s suggested minimum stand- 
ards for a good DOS, and will 
speak for itself when you try it 
out. 


PRICES AND ORDERING 


The ES/F is assembled and tested 
at the factory, with a 30-day 
money back guarantee and a one 
year full warranty. For fastest 
delivery, phone in your credit 
card or COD order using the toll- 
free line below. 

Base price for the TRS-80 
ES/F, $249.50 (ask about the 
Starter Kit); for the S-100 ES/F, 
$289.50; Apple and PET with 
single drive is $299.50, dual 
drive is $4^9.50 

Info packets at no charge; 
users manuals for the TRS-80 
ES/F are available for $3.00 for 
shipping. 

Handling is extra. 


800 - 538-8559 

408 - 737-7111 


* advertisement * 



FINALLY 

AN ALTERNATIVE TO DISKS 


THE EXATRON STRINGY FLOPPY 

(MASS STORAGE SUBSYSTEM) 


TO REQUEST AN INFORMATION PACKAGE 
EXATRON, INC. ■ 181 COMMERCIAL STREET ■ SUNNYVALE. CA 94086 


OEM 


exatron 

E TODAY 

800 - 538-8559 


S-100 

RS-232 

STD-BUS 


LOW COST - RELIABILITY - SPEED 


INFORMATION PACKAGES 
APPLE 
PET 
TRS-80 
OSI 

KIM/SYM/AIM 



Area Estimation 


It's simply a matter of BASIC geometry . 


100 REM MAIN PROGRAM — MUST SPECIFY X AND Y COORDINATES PRIOR TO 
110 REM EACH CALL. SETTING FLAG F TO 1 RESETS ROUTINE. STOP INPUT BY 
120 REM ENTERING NEGATIVE NUMBERS. 

130 F=1 

140 PRINT "ENTER THE X AND Y COORDINATES ? "; 

150 INPUT X,Y 

160 IF X<0 OR Y<0 THEN 190 

170 GOSUB 500 

180 GO TO 150 

190 PRINT "TOE AREA IS ";A 
200 END 
450 REM 

460 REM AREA COMPUTATION SUBROUTINE. XI, Y1 SAVE COORDINATES FOR 
470 REM NEXT CALL. A IS AREA. B KEEPS SUBTOTAL. F=1 INDICATES TO 
480 REM PROCESS ON FIRST CALL. XO, YO SAVE FIRST POINT COORDINATES. 
490 REM F=0 RESETS FLAG. 

500 IF F=1 THEN 570 
510 A=B+X1 *Y-Y 1*X 
520 X1=X 
530 Y1=Y 
540 B=A 

550 A=- ( A+X*Y 0-X0*Y ) *0 . 5 
560 RETURN 
570 X1=X 


580 Y1=Y 
590 B=0 
600 A=0 
610 X0=X 
620 Y0=Y 
630 F=0 
640 RETURN 

Program A (for a Tektronix 4051). 


RUN 

ENTER THE X AND Y COORDINATES ? 0 0 
2 3 
0 4 

2.6666 4 
4 6 

5.3333 4 
8 4 
6 3 
8 0 
4 2 
-1 -1 

THE AREA IS 18.6667 

Program A sample run (corresponds to 
Fig • 1). 



Fig. 1. Example of irregular figure whose 
area is estimated by Program A. 


Arnold W. Bragg 
409 Cedar Hill Lane 
Raleigh, NC 27609 


n educated guess is often the best we 
can do when calculating the area of 
complex and irregular geometric shapes. 
While the area can sometimes be estimated 
by subdividing the figure into a mosaic of 
rectangles, triangles and circles, this 


piecemeal technique is unsuitable for com- 
plex figures, and often lacks the precision 
required in sophisticated applications. A 
more precise computational tool is needed, 
one that will suit both the engineer and the 
hobbyist. 

The area estimation software described 
here can calculate areas under function 
curves and areas of machine-generated 
figures, map sections, floor plans, survey 
plats and aerial photograph segments. 
Students can use the software routine to 
check geometry and integral calculus com- 
putations, or compute the surface area of 
butterfly wings and flower petals. 

The software has been designed with 
three criteria in mind. First, the area com- 
putation algorithm must be a distinct 
module that does not require modification 
as the application changes. Second, the 
algorithm must be designed to run on 
machines having 4K of memory. Finally, the 
resulting area estimate must be mathemati- 
cally correct. Compliance with these fea- 
tures guarantees the algorithm's suitability 
over a wide spectrum of users, machines 
and applications. 

To estimate the area of any irregular 
shape we need only furnish the algorithm 
with the x- and y- coordinates of an arbitrary 
number of points lying on the figure’s 
perimeter. The more data points we furnish, 
the better our estimate becomes. Because 
we are approximating curved segments 
with tiny straight line segments, the density 
of our data points should reflect the cur- 
vature of the perimeter. 

At this stage we impose the algorithm’s 
only restriction: We must traverse the figure 
in a clockwise manner. This guarantees 
that the area of the figure has the correct 
sign. The restriction assures us of 
mathematical correctness, which will be 
important later when we consider areas 
above and below an axis baseline. 


112 Microcomputing, October 1980 


RUN 

ENTER INITIAL X VALUE ? 0 
ENTER FINAL X VALUE ? 2 
ENTER INCREMENT OF X ? 1 
THE AREA IS 4 

RUN 

ENTER INITIAL X VALUE ? 0 
ENTER FINAL X VALUE ? 2 
ENTER INCREMENT OF X ? 0.1 
THE AREA IS 3.34 

RUN 

ENTER INITIAL X VALUE ? 0 
ENTER FINAL X VALUE ? 2 
ENTER INCREMENT OF X ? 0.01 
THE AREA IS 3.3334 

RUN 

ENTER INITIAL X VALUE ? 0 
ENTER FINAL X VALUE ? 2 
ENTER INCREMENT OF X ? 0.001 
THE AREA IS 3.33333399999 

Program B sample run 1 (corresponds to 
Fig. 2). 



Fig. 2. Example of bounded area estimated 
by sample run 1 of Program B. 


The Algorithm 

Because the area estimation algorithm is 
suited to different applications, it has been 
incorporated into a subroutine that can be 
appended to a user’s BASIC program as 
needed. The subroutine requires only three 
values at each call: the data point’s 
x-coordinate, its y-coordinate and a status 
variable, or flag, whose value must be set by 
the user prior to the first subroutine call. 

The subroutine computes the area of a 
polygon whose vertices (corners) are the 
data points entered so far. For example, 
after three subroutine calls, the algorithm 
has calculated the area of the triangle 
whose vertices are the three data points 
supplied with each call. The area is zero 
after the first and second calls because 
polygons with one or two vertices enclose 
no area. 

Program A illustrates how to calculate 
the area of the flattened star of Fig. 1. Each 
vertex (corner) of the star represents a data 


100 REM MAIN PROGRAM — FUNCTION PROCESSING — LINE 240 DEFINES FUNCTION 
110 REM AND I, J ARE BOUNDS ON X, K IS X INCREMENT SIZE, X AND Y ARE 
120 REM CALCULATED FRIOR TO EACH CALL. 

130 PRINT "ENTER INITIAL X VALUE ? 

140 IN PITT I 

150 PRINT "ENTER FINAL X VALUE ? 

160 INPUT J 

180 PRINT "ENTER INCREMENT OF X ? "? 

190 INPUT K 
200 F=1 
210 X=I 
220 Y=0 
230 GOSUB 500 
240 Y=2*X*X-3*X+2 
250 GOSUB 500 
260 X=X4K 

270 IF X<=J THEN 240 

280 X=J 

290 Y=0 

300 GOSUB 500 

310 PRINT "TOE AREA IS ";A 
320 END 
450 REM 

460 REM AREA COMPUTATION SUBROUTINE. XI, Y1 SAVE COORDINATES FOR 
470 REM NEXT CALL. A IS AREA. B KEEPS SUBTOTAL. F=1 INDICATES TO 
480 REM PROCESS ON FIRST CALL. X0, Y0 SAVE FIRST POINT COORDINATES. 


490 REM F=0 RESETS FLAG. 
500 IF F=1 THEN 570 
510 A=B+X1 *Y-Y 1 *X 
520 X1=X 
530 Y1=Y 
540 B=A 

550 A=- ( A+X*Y 0-X0*Y ) *0 . 5 

560 RETURN 

570 X1=X 

580 Y1=Y 

590 B=0 

600 A=0 

610 X0=X 

620 Y0=Y 

630 F=0 

640 RETURN 

Program B. 


point supplied to the subroutine (lines 
450-640) by an INPUT statement in the main 
program (lines 100-200). Our sign restric- 
tion forces us to traverse the star in a 
clockwise manner. Otherwise the area 
would be of the correct magnitude but 
would have a negative sign. We halt the 
routine by entering a negative X or Y value. 

Variable F is the status flag, which is set 
to 1 in line 130 to indicate a first call. F is 
tested in line 500 for first call and reset in 
line 630 of the subroutine to zero for subse- 
quent calls. 

Variables X and Y represent the x- and 
y-coordinates of the most recently entered 
data point, and are supplied by the main 
program before each call. 

Variables X0 and Y0 save the coordinates 
of the first data point for later processing. 
These values essentially allow us to “close 
the box.” 

Variables XI and Y1 are the coordinates 
of the next-to-last data point entered. 
Variable B keeps a running subtotal of the 
area, and variable A is the area of the 
polygon defined by the data points. 


RUN 

ENTER INITIAL X VALUE ? 2 
ENTER FINAL X VALUE ? 8 
ENTER INCREMENT OF X ? 1 
THE AREA IS -41.75 

RUN 

ENTER INITIAL X VALUE ? 2 
ENTER FINAL X VALUE ? 8 
ENTER INCREMENT OF X ? 0.1 
THE AREA IS -41.9975 

RUN 

ENTER INITIAL X VALUE ? 2 
ENTER FINAL X VALUE ? 8 
ENTER INCREMENT OF X ? 0.01 
THE AREA IS -41.999975 

RUN 

ENTER INITIAL X VALUE ? 2 
ENTER FINAL X VALUE ? 8 
ENTER INCREMENT OF X ? 0.001 
THE AREA IS -41.9999997499 

Program B sample run 2 (corresponds to 
Fig. 3). 



Fig. 3. Example of negative bounded area 
estimated by sample run 2 of Program B. 


Microcomputing , October 1980 113 


Calculating the Areas under 
Function Curves 

Let’s consider several examples. If we 
wish to compute the area under a function 
curve between two distinct points (Fig. 2) 
and we don’t know the equation of the func- 
tion we are dealing with, we use the ap- 
proach outlined in Program A. We plot the 
function, estimate the x- and y-coordinates 
of a reasonable number of data points and 
supply these in sequence to the subroutine. 


Generally, the more points estimated, the 
better our area estimate becomes. 

If we know the equation of the function, 
we need only a simple routine to specify the 
beginning and ending X values and to in- 
crementally calculate and pass x- and 
y-coordinates to the subroutine. Consider 
the equation Y = 2X 2 - 3X + 2 between X = 0 
and X = 2 (Fig. 2). Program B defines the 
main procedure and illustrates how the 
area estimate approaches the true area as 


the magnitude of the X increment is 
decreased. We must specify the starting 
point on the X axis (X = 0, Y = 0) and call the 
subroutine. Our program increases X by 
some increment, calculates the corre- 
sponding Y value, then passes these new co- 
ordinates to the subroutine. When X has 
been incremented to 2 (the right bound), we 
drop to the x-axis and define the last point 
(X = 2, Y = 0). We conclude by calling the 
subroutine for the last time and displaying 
the estimated area. 

Lines 130-190 of Program B request the 
left and right bounds and the X increment. 
Line 240 defines the functional equation 
and line 270 tests for the right bound of X. 
Line 310 displays the resulting area 
estimate. 

If a segment of the function lies below 
the x-axis, then the area estimate of that 
segment has a negative value. Consider the 
equation Y = 0.25X 2 -X-9 between X = 2 
and X = 8 (Fig. 3). Changing line 240 of Pro- 
gram B to Y = .25*X*X - X - 9 produces the 
estimates of Sample run 2. If we processed 
the function of Fig. 3 between X = 2 and 
X= 12.955 with a very small increment size, 
our estimate would approach zero; the area 
of the segment above the X axis is approx- 
imately equal to the (negative) area of the 
segment below the X axis, and the two 
cancel. 

Calibrating the Areas of Irregular Figures 

Consider the map in Fig. 4. We can 
estimate its area by selecting data points 
and supplying the coordinates of the sam- 
ple points to Program A. But our set of axes 
has no grid as in Fig. 1. How can we 
estimate the X and Y coordinates? In what 
sort of units will our result be? 

We obtain the coordinates of the data 
points by digitizing the outline of the figure. 
The digitization process can be ac- 
complished by using a digitizing tablet or 
an optical scanner, or by overlaying the 
map with a sheet of ruled graphing paper 


100 REM MAIN FROGRAM — LINES 140-200 COMPRISE CALIBRATION MODULE, LINES 
110 REM 210-290 COMPUTE AREA OF SEGMENT, ADJUSTMENT FOR CALIBRATION 
120 REM FACTOR IS MADE IN LINE 270. R IS CALIBRATION UNIT AREA. 

130 F=1 

140 PRINT "ENTER THE X AND Y COORDINATES FOR CALIBRATION FIGURE ? 

150 INPUT X, Y 

160 IF X<0 OR Y<0 THEN 190 

170 GOSUB 500 

180 GO TO 150 

190 R=A 

200 PRINT "THE AREA OF THE CALIBRATION FIGURE IS ";A 
210 F=1 

220 PRINT "ENTER THE X AND Y COORDINATES ? "; 

230 INPUT X, Y 

240 IF X<0 OR Y<0 THEN 270 

250 GOSUB 500 

260 GO TO 230 

270 A=A/R 

280 PRINT "THE CALIBRATED AREA IS ";A; "UNITS" 

290 END 

470 REM NEXT CALL. A IS AREA. B KEEPS SUBTOTAL. F=1 INDICATES TO 
480 REM PROCESS ON FIRST CALL. X0, Y0 SAVE FIRST POINT COORDINATES. 

490 REM F=0 RESETS FLAG. 

500 IF F=1 THEN 570 
510 A=B+X1 *Y-Y 1*X 
520 X1=X 
530 Y1=Y 
540 B=A 

550 A=- (A+X*YO-X0*Y) *0. 5 

560 RETURN 

570 Xi=X 

580 Y1=Y 

590 B=0 

600 A=0 

610 X0=X 

620 Y0=Y 

630 F=0 

640 RETURN 

Program C. 



Fig. 4. Example of calibrated area 
estimated by Program C. 


RUN 

ENTER THE X AND Y COORDINATES FOR CALIBRATION FIGURE 7 0 0 
0 5 
5 5 
5 0 
-1 -1 

THE AREA OF THE CALIBRATION FIGURE IS 25 


ENTER THE X AND Y COORDINATES ? 5 10 
4 11 
3.5 12 


10 6 
9 6.5 
6 8.7 
-1 -1 

THE CALIBRATED AREA IS 8.25017 UNITS 

Program C sample run (corresponds to Fig. 4). 


114 Microcomputing, October 1980 


and reading the coordinates directly. Then, 
by defining a unit of known area (for exam- 
ple, box A of Fig. 4 = 1 square mile) and 
dividing our final result by this calibration 
factor, we guarantee that our results are in- 
dependent of the coordinate scaling factor 
or grid size chosen, and are also expressed 
in terms of the units measured (in this case 
square miles). Program C illustrates how 
the calibration program estimates the area 
of the SUBURBIA subsector of Fig. 4. 
Notice that the calibration module uses the 
area subroutine to calculate correction 
factor R (line 130-200). 

As indicated in Programs A, B and C, the 
area estimation subroutine is suited to 
several different applications, and requires 
only a small amount of memory for im- 
plementation. Applications differ only in 
the method by which data points are 
selected. The selection methods alter the 
calling routine; the subroutine never needs 
to be modified. 

Program A is used when a convenient 
grid scale exists and data points with non- 
negative coordinates can be read directly 
from the scale, traversing clockwise. Pro- 
gram B is suited for numerical integration 
applications between specific bounds. 
Area segments below the x-axis display the 
correct sign. Program C is useful when the 
area estimate must be expressed in stan- 
dard or non-standard units such as square 
inches or acres rather than in terms of the 
unit imposed by the grid scale. 

In each case, our accuracy depends only 
on the number of sample data points we 
select to reasonably represent the figure 
and the precision with which the x- and 
y-coordinates of these data points are 
estimated. ■ 


EPROM PROGRAMMER KITS 


For Single Supply 2516 & 2716 EPROMS, PC 
Board and complete plans. Connects to PIA. 
Position Independent M6800 software listing 
included — Verify Erased, Program, Verify 
Contents, and Transfer Contents to RAM. 



Micro Technical Products 


is 280 


8 1 4 W. Keating Ave., Dept. K • Mesa, AZ 85202 




ble prices. SJIJL 

tic ha \/o hoon 




, \A 

e and ^/Vv 




SOFTSTUFF, 

established by Heath Com 
pany, offers you a selection of 
software tools at affordable prices. 

All SOFTSTUFF programs have been 
checked and confirmed on the hardware 
indicated. Documentation, though not as exten- 
sive as standard Heath Company documentation, 
has been completely reviewed and judged acceptable. 

All SOFTSTUFF products come on a 5V4-inch diskette and 
require HD0S, unless otherwise stated. For value and performance 
...SOFTSTUFF is good stuff. \Jlr\ 

General Ledger II 

Includes powerful programs for entry, maintenance, reporting and analysis of ^ 
accounting data. Features include: Custom Chart of Accounts for determining 
account names and numbers. Any numbering system may be used, with or without dec- 
imal notation. Comprehensive Printouts upon request. Printouts of Chart of Accounts/ 
Trial Balance/Worksheet, Journal, General Ledger, Income Statement, and Balance Sheet. 
Simple-to-use formatting program lets you customize headings, subtotals, and totals for 
the Income Statement and Balance Sheets. Statements include common-form analysis of 
amounts. They also include variances from budget or prior year figures (your choice), 
expressed in dollars and percentages. All printouts require 96-column capacity. Double 
Entry/Automatic Entry Checking automatically checks equality of debits and credits 
with each entry. Non-equal transactions are rejected. Simple Data Entry, with one quick 
keystroke, in General Journal, Cash Receipts, or Cash Disbursements mode. Account 
Verification helps guard against mistakes by preventing entries to non-existent accounts 
and rejecting account numbers already in use. New Account Facility lets you open new 
accounts any time during data entry with no disruption to the transaction being entered. 
Balance Reporting lets you call the balance of any account to the terminal during data 
entry. All balances are instantaneously updated with entry of new transactions. Audit 
Trail provides provision for a source document number (such as a check, receipt or 
invoice number) and fora brief free-form description of the transaction. One of the easiest- 
to-use, most flexible systems you’ll find anywhere. 

Along with diskette and user’s manual, General Ledger II includes sample printouts and 
program listings. Requires Microsoft BASIC. 

HDOS Model #SF-9004: $124.95. CP/M Model #SF-9104: $124.95 (8 disk). Manual 
only, Model #595-2500: $15.00 (refunded when complete package is purchased). 

Full Screen Editor: 

The SOFTSTUFF text editor uses H89 or H19 screen as a window into a file. Cursor motion 
keys position the cursor so changes can be typed anywhere on the screen. Function keys 
perform character and line insert and delete, string search, move and copy single and 
multiple lines, and scrolling of text in the window. For H89 and H8 + H19. HDOS Model 
#SF-9000: $49.95. 

Text Formatter: 

Performs fill and justification (straight right margins) of text previously prepared by your 
editor. Page numbering, headers and footers, indents, hanging indents, centering and 
underlining . INCLUSION feature allows automatic insertion of up to 26 user defined strings 
and merging of documents. HD0S/H19/H89. HDOS Model #SF-9001: $54.95. 

Microsoft Macro 80 : 

8080/Z80 MACRO Assembler. Intel and Zilog Mnemonics supported. Relocatable linkable 
output. Package includes LINK 80 and Cross Reference List utilities. Complete docu- 
mentation and HDOS common deck MACRO included. For H8 and H89. HDOS Model 
#SF-8002: $69.95. 

TELINK: 

A utility which provides file transfer between the H89 and H8/H19/H17 and Information 
Services (MicroNET). Features include user defined keys which provide for auto-login, 
mail check, etc. Full error checking and elapsed time clock on screen. Very easy to use. 
Use on other time sharing systems too. HDOS Model #SF-9003: $39.95. 

SORT: 

An extremely fast assembly language routine that sorts records up to 255 characters in 
length with user defined sort fields. Could be called by MBASIC or stand-alone. Source 
code provided. HDOS Model #SF-8004: $29.95. 

Small Business Inventory 

For complete inventory analysis. Accommodates up to 12-character part numbers (alpha- 
numeric) , 18-character descriptions of parts, 12 items of information on each part include 
reorder level, usage history by month and year-to-date, much more. Printouts include: 
(1) all information, (2) part # , description, price, (3) reorder list. Requires Microsoft BASIC 
and H19 terminal. HDOS Model #SF-9005: $69.95. 

To order: 

1 . Send check or money order to Heath Company, Dept. 351-708, Benton Harbor, Ml 49022. 
Michigan residents add 4% sales tax. Write model numbers clearly. 

2. Call toll-free 800-253-0570 and use VISA or Master Card. In Michigan, Alaska, & Hawaii, 
call (616) 982-3411. 

Visit your Heathkit Electronic Center where SOFTSTUFF is on display. See your telephone 

heath — I 

fjmnu * 8 SF-102 


W 


white pages for the location nearest you. 
SOFTSTUFF is a trademark of Heath Company. 




tS Reader Service index— page 241 


— r J 

Microcomputing, October 1980 115 



Are you thinking about owning a personal computer 
but the thought of having to learn a lot of "greek" 
sounding words turn you off? Wish people could 
talk and write in plain English? Well, behold the 
Chorganizer. This book discusses just what most peo- 
ple expect a computer to do for them. It shows how 
to remove the drudgery from common chores. How? 
Through high-speed organization techniques — the 
very thing a computer is well suited to do. The Chor- 
ganizer will help you to learn how to save money, 
plan better, locate important facts quickly. This can 
lead to a better life-style for you. It will free you from 
laborious chores. What kind of chores, you wonder? 
Just to name a few, a computer can help you balance 
your checkbook, maintain a list of household valuables 
for inventory and insurance claim purposes, keep a list 
of monthly department store charges, record tax- 
deductible expenses by category for income tax pur- 
poses, and mail cards, invitations or notices to friends, 
members of a club, business associates, etc. Using a 
few simple commands and statements, and a data-base 
management program on your personal computer and 
your time can be spent on life's pleasures instead of 
day-to-day chores. 

Only $5.95 No. 87 

SCELBI's Secret Guide 
to Computers 


6502, 6800, 8080, Z80 

With the right SCELBI Gourmet Guide & Cookbook, 
you'll be able to put together programs without hav- 
ing to start from scratch. You'll have the most useful 
routines at your command - already programmed and 
ready-to-use. Features are search and sort routines, 
numerous examples of general-purpose utility routines, 
I/O and interrupt programming, control and manipula- 
tion of stacks, code and numeric conversion routines, 
flowcharts and source listings. Special listings include 
a presentation of machine codes (hexadecimal and oc- 
tal notation included), and a reference guide to com 
plete instruction set. All recipes are time tested. Tens 
of thousands of SCELBI’s cookbooks have been used 
throughout the U S. and in countries around the world. 

No. 99 (6502) $12.95; No. 50 (6800) $12.95 
No. 60 (8080) $12.95; No. 75 (Z80) $15.95 


Learn Micro-Computers 

A new multimedia information package for the begin- 
ner. Includes text from Understanding Microcomput- 
ers plus high-quality cassette Covers all the basics 
quickly, easily and enjoyably. Companion tape in 
eludes chapter-by-chapter synopsis of the book. A 
great new idea for self-study. 

Just $14.95 No. 40 


Here's a variety of programs in BASIC language to 
help the businessman, scientists and engineer. Shows 
how to apply the language to practical problems and 
equations. Formulas cover calculations of interest, 
payback periods, mortgage schedules, techniques for 
extending number of useful digits in monetary calcu- 
lations using limited BASICs. A variety of electronic- 
applied formulas are programmed. The mechanics 
chapter covers resultant-force calculations, attractive 
forces due to gravity, projectile motion prediction and 
graphing, moments of inertia for T-section, l-section 
and channel sections. Mathematics chapter includes 
programs to solve the quadratic formula, general sum- 
mation formulas such as sum of geometric progression, 
number conversion program, algorithms to compute 
sine, cosine, tangent, log e. For fun, games of Hang 
man and Space Capture are provided. 

Only $8.95 No. 30 


Microcomputer Potpourri 

A pocket-sized reference for the beginner. Data on all 
the popular chips. Pin connections, diagrams, distin- 
guishing features. All the pertinent information is pre- 
sented clearly and concisely. Also included is a glos- 
sary covering all the jargon. Full digest on understand- 
ing microcomputers. 

Just $3.95 No. 70 


This book will turn you into a computer expert, quick- 
ly and easily. It explains the kind of computer found 
in most schools, small businesses and homes the kind 
that has interactive BASIC. You'll learn BASIC, having 
fun every step of the way. The book explains how to 
deal with computer machinery, which buttons to press 
and trains you to write many kinds of programs. The 
author's "underground" style of writing is sure to hold 
your interest. The only way to learn BASIC program- 
ming is to look at sample programs, analyze them, and 
then invent your own. This book contains 150 sample 
programs that do just that. Charts are given comparing 
the different computers. Follow the four "secret" les- 
sons of this book and you'll be programming a com- 
puter with confidence! 


Take My Computer . . . Please! 

An uproariously funny full length book about the 
true-to-life misadventures of well-known author Steve 
Ciarcia and his computer's inability to cooperate. Page 
after page of jollies and illustrations, too! Hardcover 
edition. 

Just $5.95 No. 35 


Personal Information 
Management System 


Just $5.95 No. 93 


Z80 Instruction Handbook 

Your complete guide to the powerful Z80 instruction 
set. Machine codes are presented in both octal and 
hexadecimal format. A convenient index lists all in- 
structions alphabetically along with machine codes 
and timing information. Industry standard mnemonics 
used throughout Convenient pocket-sized edition. 

Only $5.95 No. 20 


Introduction to 

Low Resolution GRAPHICS 

What is "low resolution graphics"? It's graphics pre- 
sented on a point-by-point basis where the number of 
points is limited to about 8000 or less. The APPLE II, 
TRS-80 and PET all have this capability and this pub- 
lication will enable you to utilize your computer to 
the fullest. Consolidate data through graphics. Plot 
plain and simple, or fancy and complex, graphs for 
business. A computer presentation can improve impact 
by clarifying and amplifying the substance of the ma- 
terials at hand. But if your interests lean more toward 
just having fun, this book will quickly show you the 
way. Learn to produce amazing computer graphics — 
even if you can't draw a line, literally! Master the basics 
of line & shapes, then on to drawing pictures, even cre- 
ating animations! Produce a deck of playing cards . . . 
a clown that winks ... or if you feel really inventive, 
try your hand at meshing your favorite illustration 
with synchronized, computer-generated sound. A new 
opportunity in programming awaits you — invest in 
Introduction to Low Resolution Graphics. 

Just $11.95 No. 65 


Increase your information management capabilities — 
use PlMS! In business you've got a personal stake in 
how information is managed because information is 
your key to success. PlMS will allow you to unleash 
the power of a microcomputer, to make it work for 
you! Use your computer for accounts receivable ... ac- 
counts payable . . . maintenance of inventory records 
... to keep track of credit charges. Or, apply PlMS to 
personal chores and let it help you to improve your 
ability to plan . . . save money . . . locate important 
facts quickly. Specifics such as management of income 
tax deductions, department store charges, keeping 
track of personal disbursements, and more, can be 
managed through your computer. Let PlMS introduce 
you to a new way of living . . . enjoy a better life style, 
more happiness and freedom from drudgery of routine 
chores through the better command of information 
that PlMS can bring your way. Designed for computers 
such as the TRS-80, PET. etc., PlMS will give you the 
power to succeed in either the professional or personal 
arena, even without prior knowledge of programming. 
Easy-to-read manual and source listing included. Suc- 
cess is only as far away as your copy of PlMS! 

Only $11.95 No. 10 


Understanding Microcomputers 

If a basic understanding of microcomputer language 
has now become a necessity, help is here. Understand- 
ing Microcomputers offers its readers an education in 
microcomputer system information. The easy-to-read 
format assures quick comprehension icr both the neo- 
phyte as well as the professional searching for business 
applications. This 300-page publication tells how to se 
lect a small computer system, introduces BASIC lan- 
guage programming, and illustrates BASIC instructions 
for almost every class of microprocessor. The conveni- 
ent glossary covers all key terms. 

Only $9.95 No. 90 


You'll appreciate a special quality of SCELBI 
books — A mark of excellence that's hard to 
find elsewhere. Books written authoritatively, 
yet in a style that is easy to read and with an 
appearance that makes reading them a pleas- 
ure. See SCELBI books at your favorite elec- 
tronics or computer store or use this handy 
coupon and order direct. HP-85 users, ask 
about our new programs for that machine. 


rzz 

I ^ffSCELBI Publication ^ 281 

| "*20 Hurlbut St., Elmwood, CT 06110 

I IMPORTANT ORDERING INFO! Please include $1 
I shipping/handling charges for each item. Prices shown 
■ are for North American customers. MC/VISA, Postal 
J and Bank Money Orders preferred. Allow 4 weeks for 
I delivery. 


□ 

z 

o 

10 

□ 

z 

o 

20 

□ 

6 

z 

30 

□ 

No. 

35 

□ 

No. 

40 

□ 

No. 

50 

□ 

No. 

60 

□ 

No. 

65 

□ 

No. 

70 

□ 

No. 

75 

□ 

No. 

87 

□ 

No. 

90 

□ 

No. 

93 

□ 

No. 

99 





Name (print). 


| Address | 

| City /State ■ 

Zip Code 1 

| Card No. i 

| Bank No Amt. Enc | 

j Signature ■ 

J 1 


116 


Microcomputing, October 1980 


Thoughts on the 

SWTP Computer System 


The author takes a closer look at the 6809 and its Motorola BASIC, discusses 
multiprogramming and presents two interrupt-driven printer programs. 


Peter A. Stark 

PO Box 209 

Mt. Kisco, NY 10549 


S ince my comments on the 6809 ap- 
peared in the January issue, several 
readers have chided me for urging caution. 
Perhaps I wasn’t clear enough in my com- 
ments. Here’s what I intended to say. 

I’m impressed by the 6809. It’s about the 
best microprocessor around. The fact that 
so many other manufacturers are planning 
computers using it— including the TRS-80 
Color Computer— is testimony to the fact 
that others think it’s great too. 

But as of now, its capabilities are not be- 
ing utilized. 6809 software as of last 
January was simply reassembled 6800 
code. While this software runs faster on the 
6809, it doesn’t take full advantage of the 
6809’s potential. Thus, rushing to convert to 
the 6809 just didn’t make sense, especially 
since it wasn’t definite whether the ap- 
proaches of several different companies 
active in the software and hardware areas 
would be compatible. Hence, my caution 
and somewhat negative article. 

In the meantime, there has been frantic 
activity to develop the software to take ad- 
vantage of the 6809’s capabilities. 
Moreover, what started out as 
bedlam — with each manufacturer heading 
off in a different direction — is now being 
coordinated, with most of the SS-50 bus 
manufacterers keeping in contact and ex- 
changing hardware and software to make 
sure their products are compatible. That is 
a welcome sign. 

Motorola’s BASIC-09 

One of the most important developments 
is a new BASIC from Motorola. As you re- 
member, the 6800 received a bad and unde- 
served reputation for being slow simply be- 
cause the first 6800 BASICS were slow 
(though excellent in other respects). It 
makes you wonder where the 6800 would be 
with respect to the 8080 and Z-80 had 
Motorola initially spent the money to de- 


velop an excellent BASIC, which they are 
now developing for the 6809. 

For over a year, Motorola has had a con- 
tract with Microware to develop a new 
BASIC called BASIC-09. A preliminary ver- 
sion was on display at the Gimix booth at 
the West Coast Computer Faire in March 
and caused quite a stir. I’ve read the 
preliminary manual and hope to have a 
chance to try it out soon for a more com- 
plete report. But the manual is amazing. 

BASIC-09, a structured language, bor- 
rows some of the better features of Pascal. 
Line numbers are optional; the program is 
broken up into sections called procedures, 
with each having a name. Procedures then 
call each other by name. Line numbers, if 
used, as well as variables, are local to the 
procedure, so other procedures can use the 
same line numbers or variables. If you’re in- 
to structured programming, then you’ll like 
this BASIC; if not, then just ignore pro- 
cedures and write the whole program as 
one big procedure. 

BASIC-09 has five types of vari- 
ables— byte, integers (up to 32,767), real 
(nine-digit precision using 40-bit floating 
point binary), Boolean (true-false) and string 
(with string length up to 32,768 characters). 
You can define your own data formats by 
combining these five data types into larger 
data structures. 

For BASIC old-timers, BASIC-09 has the 
standard GOTO statement; for structured 
programming aficionados who don’t like 
GOTO, there are also 
IF.. .THEN. ..ELSE 
REPEAT...UNTIL 
WHILE. ..DO 

and other structures in Pascal. 

BASIC-09 is a semi-compiler like the new 
TSC BASIC; that is, as each line is typed in, 
it is immediately checked for accuracy and 
translated into an internal code that makes 
later execution faster. When the program is 
listed, it is translated into plain BASIC and 
printed in an indented form for easy 
reading. BASIC-09 also includes an editor 
function that has extensive editing 
capabilities, including renumbering and 
string replacement. Variable names and 


procedure names can be any length, upper 
or lowercase. 

For debugging, BASIC-09 allows tracing, 
which prints out each source line before it is 
executed, as well as the values of variables 
as they are assigned. At any point, the pro- 
gram can be suspended, and the variables 
can be read out or changed. 

Microware has also developed an 
operating system called OS-IX (pronounced 
OS-nine). Although OS-IX is available with 
BASIC-09, it is also available separately 
from Microware. It is essentially a device- 
independent operating system that pro- 
vides the interface between BASIC-09 or 
other languages and the hardware. 

BASIC-09 will probably be available in 
ROM from Motorola as well as in disk-based 
versions directly from Microware. 

For those users who want disk-based 
BASIC, Microware has signed a contract 
with Microsoft and will supply Microsoft 
BASIC 5.0, along with OS-IX, on disk. The 
advantage of this is that all the business 
software that now runs on other versions of 
Microsoft BASIC will also run with this 
BASIC. Present plans are to make this soft- 
ware compatible with both 5 inch and 8 inch 
floppy d r sks, as well as several different 
disk controllers. 

At this point, it is still not definite as to 
what hardware will be required for what 
software. If you’re happy with your 6800 
system, stick with it until some more dust 
settles. 

Time-Sharing and Multitasking 

Most of us use our 6800 systems for just 
one job at a time. But the 6800 is versatile 
enough that it can execute several func- 
tions at one time. All of these require inter- 
rupts in one way or another. 

The top eight locations in a 6800’s mem- 
ory, locations FFF8 through FFFF, contain 
four transfer vectors that correspond to the 
three interrupt inputs and reset as follows: 
FFF8 and FFF9 — IRQ interrupt 
FFFA and FFFB — SWI interrupt 
FFFC and FFFD — NMI interrupt 
FFFE and FFFF - Reset 
(Reset is not really an interrupt, but it 


U* Reader Service index— page 241 


Microcomputing, October 1980 117 


behaves in a similar way.) 

When the RESET switch is pressed, for 
instance, the 6800 stops whatever it is do- 
ing, fetches the vector that is stored in loca- 
tions FFFE and FFFF in ROM and executes 
a jump to the address that the vector points 
to. For instance, in SWTBUG or MIKBUG, 
locations FFFE and FFFF contain the 
number E0D0. Hence, pushing RESET will 
force the computer to execute a jump to 
location E0D0, which is the beginning of the 
monitor. 

Interrupts act a little differently. When 
one of the two interrupt inputs to the 6800 
(either IRQ or NMI) is grounded, or when the 
program encounters an SWI instruction, the 
6800 also completes its current instruction 
and then jumps to wherever the correspond- 
ing vector in ROM is pointing. However, be- 
fore that jump it stores the contents of its 
internal registers in the stack. Later, an RTI 
instruction will fetch all of the information 
back off the stack and allow the 6800 to 
resume running the program that had been 
interrupted as though nothing happened. 

The three interrupt methods have dif- 
ferent uses. The SWI instruction is usually 
used for debugging (we have already seen 
in this series how it can be used with break- 
points and single-stepping). It can also be 
used for subroutine calls. For instance, 


GMXBUG uses the SWI to return to the 
monitor so that a system subroutine can be 
executed. 

IRQ interrupts are usually used to allow 
I/O devices to call for help from the pro- 
cessor. An IRQ interrupt request (via a 
grounded IRQ pin) will be ignored by the 
6800 if the I bit in the condition code register 
is a 1, so that important programs can turn 
on this bit and prevent IRQ interrupts from 
occurring. 

This important feature is called masking. 
Certain kinds of programs -such as disk 
reads and writes, which have critical timing 
and would make errors if they were inter- 
rupted-can set the I bit and prevent 
themselves from being interrupted. Further- 
more, once an interrupt occurs, further in- 
terrupts are usually masked to prevent 
some other problems. 

NMI interrupts, on the other hand, are not 
controlled by the I bit in the condition code 
register; NMI stands for nonmaskable inter- 
rupt. When an NMI interrupt request oc- 
curs— when the NMI pin on the 6800 is 
grounded— an interrupt will occur, regard- 
less of what else is going on. 

Hence, NMI interrupts are usually re- 
served for important events, where the pos- 
sible loss of data is not important. A typical 
case is a power-fail interrupt, where a sen- 


sor in the power supply generates an NMI 
interrupt when power fails, with the idea of 
giving the 6800 a few milliseconds— until 
power supply capacitors discharge, 
perhaps — to stop executing a program and 
either save data or at least go into a fail- 
safe mode before all power goes off. 

Thus, for time-sharing or multitasking, 
we’re usually concerned with the IRQ inter- 
rupt. IRQ interrupt requests can either 
come from an I/O device that asks for an in- 
terrupt when it needs the CPU or from an ex- 
ternal timer that generates interrupts at 
fixed intervals. 

Why would you want to generate these 
timed interrupts? There are several possible 
reasons: 

1. An interrupt routine could keep count 
of these interrupts and use them to keep 
track of the time and date, which could then 
be stored in some memory locations and 
read out by other programs. Such an ap- 
proach was described in an article by 
Richard Parry in the January 1980 issue of 
Kilobaud Microcomputing on page 150. 
(Richard’s scheme was a bit indirect: inter- 
rupts did not go to the 6800 directly, but 
went through a PIA first. But that’s not im- 
portant.) 

2. A timed interrupt could be used to time 
external outputs. For instance, if we wanted 


90 


Dealer and Club 
Discounts Available 


Overseas Orders Add 
$3.00 For Postage 


• Cloth Backed Naugalhyde 

• Waterproof & Dustproof 

• Longer Life 

• Improved Reliability 

• Two Decorator Colors 
Saddle Tan • Black 


TRS-80 MODEL II 


TRS-80 MODEL I 


TO ORDER: 

Include $1.00 for 
Vinyl Postage & Handling 

Send Check or Money Order To 
CompuCover 
P.O. Box 324 Dept. A 
Mary Esther, FL 32569 
Phone (904) 243-5793 


Cassette.. 


EXPANSION INTER 


Line Printer 1 

....$17.95 

Vector MZ 

$14.95 

ADM-3 

....14.95 

Trendcom 100 & 200.. 

....9.95 

.$22.95 Line Printer II 

9.95 

N. Star Horizon 

14.95 

Video 100 . 

9 95 

Decwriter III 

19 95 

7.95 Quick Printer 1 

9.95 

Compucolor II 

19.95 



I.D.S. 440 

12 95 



H. P. 85 

14.95 

NEC Spinwriter 


TRS-80 Disk 

..$4.95 

Pull A nnlo II 

*10 a*; 

OSI C4P 

14.95 

Keyboard Models.... 

..$15.95 

Double Disk 

....7.95 

run Appie ii 

Apple II Keyboard... 

9.95 

Sorcerer 

9.95 

Diablo Printers 


Percom Disk 

....4.95 

$795 Apple II Disk 

3.95 



Keyboard Models.... 

....15.95 

MPI B51.B52 

....4.95 



HAZELTINE 




Lobo Mini Disk 

....6.95 

....4.95 


1400, 1410, 1500, 1510, 1520, 

Centronics Printers 


Matchless Mini 

....6.95 

...9.95* Pet Computer 

...$1295 

1552 


700, 701, 702, 703 

..$19.95 

Vista Mini Disk 

....6.95 

.19.95* Pet 2040 Disk 

12.95 

Soroc IQ 120 

18.95 

PI, 730, 737 

9.95 

Superbrain 

.19.95 

r Pet 2022 Printer 

9.95 

Adds Terminal 


779 

...17.95 

Intertube 

1995 

Pet 2023 Printer 

9.95 

25, 100, 980 etc 

19.95 

T.l. 800 Series 

...19.95 

Emulator 

.19.95 


118 Microcomputing, October 1980 





to output serial five-level code out of one of 
the outputs of a PIA at 45 baud, then an in- 
terrupt occurring every 1/45 of a second 
could be used to time the outputs. 

3. When we want to run several programs 
in a round-robin fashion, giving each a cer- 
tain amount of time, an interrupt timer can 
cause the transfer of control from one pro- 
gram to the next. This is essentially the idea 
behind time-sharing. There are several 6800 
products designed for running multiple pro- 
grams in this fashion. 

Microware’s RT-68 

Our discussion of monitors has already 
covered some of the features of the RT-68; 
let’s look at just its multitasking operation. 

With the RT-68, CPU time is allocated to 
each of up to 16 programs (called tasks) in a 
round-robin fashion, so that these tasks ap- 
pear to run concurrently. These tasks may 
be independent or may depend on each 
other and share data. 

RT-68 keeps track of these by maintain- 
ing a task status table in locations A050 
through A07F. For each of the 16 possible 
tasks, the table contains three bytes of in- 
formation. The first of these is a TSB, or 
task status byte, while the other two con- 
tain a TSP, or task stack pointer. 

Tasks are started and stopped by inter- 


rupts; since each interrupt stores register 
contents in the stack, each of the 16 tasks 
has to maintain its own stack area to keep 
this data separate from all other tasks. 
Thus, the task stack pointer in the table 
points to the stack used by each task. Keep 
In mind that of the 16 possible tasks, only 
one task is actually running at any one time; 
task stack pointers for the other 15 are con- 
stantly kept in the table. 

Tasks can have one of three states: 

1. Currently executing. 

2. Active, that is, not currently running, but 
ready to run as soon as their turn comes. 

3. Inactive, that is, not currently running and 
also not ready to run. 

Although RT-68 can handle up to 16 
tasks, in most cases a much smaller 
number of tasks will be active. There could, 
for instance, be just two active tasks and 14 
inactive ones. 

The task status byte is divided into three 
sections: 

1. Bit 7 indicates whether the task is active 
(1) or inactive (0). 

2. Bits 6 through 3 indicate how long that 
task is to run before being stopped and con- 
trol turned over to another task. This time is 
measured in interrupts received from an in- 
terrupt timer; each interrupt is called a tick, 
and a task may be assigned from one to 15 


ticks. 

3. Bits 2 through 0 indicate a task’s priority. 
Each task can be assigned a priority from 0 
to 7. Higher-priority tasks get preference 
over low-priority tasks; in fact, a low-priority 
task will not run at all as long as there are 
active higher-priority tasks. There is also a 
system priority that RT-68 keeps for itself; 
tasks having a lower priority also don’t get a 
chance to run. 

RT-68 uses an external clock timer, which 
generates an interrupt at a fixed interval, 
such as every 1/60 or 1/100 second. This is 
coupled to a PIA on port 1, and through that 
to the NMI line. Thus, the clock generates 
an NMI interrupt at fixed intervals. 

Normally, NMI interrupt requests cannot 
be masked, but RT-68 channels them 
through a PIA first so they can be controlled 
at the PIA. This converts them into a 
maskable form and also allows testing to 
see where an interrupt came from. Other in- 
terrupts can also be connected to the NMI 
or IRQ inputs. RT-68 can tell the difference 
between a clock interrupt and a user NMI in- 
terrupt by checking to see whether it came 
from the PIA on port 1. 

Other Available Programs 

Several programs for multi-programming 
with the MP-T timer are available from Ed 


OSI SOFTWARE FOR OSI OSI 

We Have Over 100 High Quality Programs For Ohio Scientific Systems 


0 
s 

1 


ADVENTURES AND GAMES 

Adventures - These interactive fantasies will fit 
in 8K! You give your computer plain english 
commands as you try to survive. 

ESCAPE FROM MARS 

You awaken in a spaceship on Mars. You're in 
trouble but exploring the nearby Martian city 
may save you. 

DEATHSHIP 

This is a cruise you won't forget - if you survive it! 

Adventures $14.95 Tape or 514" Disk 
$15.95 8” Disk 

STARFIGHTER $5.95 


Realtime space war with realistic weapons and a 
working instrument panel. 

ALIEN INVADER 6.95 (7.95 for color and sound) 

Rows of marching munching monsters march on 
earth. 

TIME TREK $9.95 

A real time Startrek with good graphics. 
BATTLEPAC $17.95 

For the battlebuff. Contains Seawolfe, Starfighter, 
Bomber and Battlefleet. 


And lots, lots, lots more! 




TEXT EDITORS FOR ALL SYSTEMS!! 

These programs allow the editing of basic 
program lines. All allow for insertion, deletion, 
and correction in the middle of already entered 
lines. No more retyping. 

Cl P CURSOR CONTROL (Text Editor) $9.95 

Takes 166 bytes of RAM and adds, besides text 
editing, one key instant screen clear. 

C2P/C4P CURSOR $9.95 

Takes 366 BYTES to add PET like cursor 
functions. Enter or correct copy from any location 
on the screen. 

SUPERDISK $24.95 for 5" $26.95 for 8” 

Has a text editor for 65D plus a great new 
BEXEC*, a renumberer, search, a variable table 
maker and Diskvu - lots of utility for the money. 

We also have 25 data sheets available such as: 

IMPLEMENTING THE SECRET SOUND PORT ON 
THE Cl P $4.00 

HOW TO DO HIGH SPEED GRAPHICS IN BASIC 
$4.00 

HOW TO READ A LINE OF MICROSOFT $1 .00 

JOYSTICK INSTRUCTIONS AND PLANS FOR 
Cl P $3.00 

SAVING DATA ON TAPE $4.00 

THE AARDVARK JOURNAL 

A tutorial bimonthly journal of how to articles 
$9.00 


0 
s 

1 


Our $1 .00 catalog contains a free program listing, programming hints, lists of PEEK and POKE locations and other stuff that OSI 
forgot to mention and lots more programs like Modem Drivers. Terminal Programs, and Business Stuff. 

Aardvark Technical Services 1 690 Bolton, Walled Lake, Ml 48088 (31 3) 624-631 6 ^ 91 


i/ 0 Reader Service index— page 241 


Microcomputing, October 1980 119 


Joyce, 4603 Lyceum Drive, San Antonio, TX 
78229. His scheme also uses a task status 
table and some similar ideas. 

If you have access to old copies of Elec- 
tronic Design magazine, a short note by 
David Johnson in the February 15, 1978, 
issue describes a simple approach to do the 
same thing. In this case, switching back 
and forth between tasks is initiated by each 
task periodically suspending itself by call- 
ing the monitor. This approach is simpler 
but has the disadvantage that a program 
that develops a bug may not release con- 
trol. 

SWTP Multi-User Board 

The approaches I’ve discussed so far are 
for running a number of completely sepa- 
rate programs; the multi-user board (MUB), 
on the other hand, is set up for running one 
program with several users. It’s intended to 
allow up to four users to run programs in 
either the BASIC or Pilot language. Either 
way there is only one BASIC or Pilot inter- 
preter in memory, and the four users take 
turns using it to interpret their own user pro- 
grams. 

The MUB board occupies memory ad- 
dresses 0000 through 0FFF, or the lowest 
4K. Thus, only addresses from 1000 and up 
are available for user RAM. SWTP states 
that the remaining memory from 1000 to 
7FFF must be built up out of 4K and 8K 
boards and that the 32K memory board can- 
not be used with the MUB. This is not so, as 
we shall see later. 

In any case, the MUB uses up addresses 
from 0000 through 0FFF, or 4K. On the 
board are four 2114 static RAMs, which pro- 
vide 2K bytes of memory, which is split up 
into four 512-byte sections, one section for 
each user. As in a typical timesharing 
system, each user gets a small slice of time, 
typically about five milliseconds, during 
which his program runs and the other users’ 
programs are dormant. During this time, his 
512 bytes occupy addresses 0000 through 
01 FF, while the other three 512-byte 
memories are disconnected. 

The MUB has a page register at address 
0C00 that selects which of the four 512-byte 
memories is enabled at any one time. The 
variables, stack and various constants for 
each user are stored in these 512 bytes and 
swapped in and out by hardware when a dif- 
ferent number is written into this page reg- 
ister to select a different user. 

An interrupt timer on the board generates 
an I RQ interrupt about 200 times per second 
(about five milliseconds apart), so no exter- 
nal timer board is required. These interrupts 
are generated by a 555 timer, which is dis- 
abled when the system is first started but 
starts working when a read from location 
0800 is executed. Once the clock starts, it 
continues running until power is turned off 

120 Microcomputing, October 1980 


or the reset button is pressed. 

The hardware of this board is fairly sim- 
ple; it’s the software that makes the whole 
operation useful. Normally supplied with 
the MUB is a 4K Micro BASIC Plus, which 
allows up to four users at the same time. 
This is an integer BASIC without strings 
that appears similar to the Micro BASIC of- 
fered by TSC. In fact, the multi-user board 
and multi-user BASIC first appeared in 
some TSC ads a few years ago. 

Also available are 8K cassette and disk- 
based BASICS from SWTP. Using the infor- 
mation in the fifth installment of this series 
(September 1979), you could modify SWTP 
8K BASIC, version 2.0, to work in this mode 
too. 

Of special interest to teachers, though, 
may be the multi-user Pilot also available 
from SWTP and Micropi. Pilot is a pro- 
grammed instruction language specially 
set up for easy programming of question- 
and-answer-type programs. 

Basically, Pilot commands consist of one 
or two letters followed by a colon (T: or M:), 
followed, in turn, by some text, for example: 

T: What’s your name? 

A: 

M: Pete, Peter 
YT: I like that name. 

NT: Too bad 

This program says to type (T:) the ques- 
tion, “What’s your name?” wait for an 
answer (A:) and match that answer (M:) 
against either Pete or Peter. If it matches 
(YT: means type if yes), print one message; 
if it does not match (NT: means type if no), 
print another. 

Full Pilot allows branching and computa- 
tion, but the convenient feature is that it 
also will allow partial matches of answers 
or even allow alternative answers. For ex- 
ample, it will accept an answer even if it is 
misspelled or will accept a numeric answer 
to a problem even if it is off by a slight 
amount. Though BASIC could also be used 
for this type of programming, it takes a lot 
of work in BASIC to allow for alternative or 
partial answers. 

MUB Modifications 

Since the multi-user board occupies the 
lower 4K of memory but only has 512 bytes 
of actual memory accessible at any one 
time, when it is plugged in, the system will 
not run any other programs that require the 
lower 4K. 

Moreover, SWTP states that the MUB 
board cannot be used with the 16K or 32K 
dynamic memory board. Thus, to get a full 
28K of memory (from 1000 to 7FFF) you 
need three 8K boards and a 4K board. When 
you unplug the MUB board to fun normal 
programs, you then need one more memory 
board to supply the lower 4K. Thus, to use 
the system you need five memory boards, a 
lot of power and almost $1000 (at list price). 



Fig. 1. Changes to multi-user board. 


With a simple modification, the MUB will 
work just fine with the 32K memory board. 
Moreover, this modification includes a 
switch to enable or disable the MUB, so that 
the system can be used for standard single- 
user programs without having to plug and 
unplug boards. As with some other informa- 
tion in previous installments, this modifica- 
tion comes from a knowledgeable SWTP 
dealer, Lehigh Computer Works, 1132-2 
Tilghman Street, Allentown, PA 18102. Tom 
Quay of Lehigh has tried this one out and it 
works well. I’ll only outline the mod here; 
complete details can be obtained from 
Lehigh. 

The modification simply disables the 32K 
memory board whenever the MUB is ad- 
dressed. The only specific requirement is 
that the memory board contain the full 32K 
of memory; this is really of no consequence 
because for multi-user applications you’d 
probably want this much memory anyway. 
The only parts required for the modification 
are some wire, an SPDT switch and a 2.2k 
resistor. 

The switch is optional, but it does allow 
the MUB to be switched out, so that the full 
32 K of memory becomes usable for normal 
program use. This modification also uses 
the UD1 line on the motherboard; if your 
system is already using this line for some 
other purpose, then you’ll have to find some 
other way to get a signal from the MUB to 
the memory board (such as a direct jumper). 

Fig. 1 shows the changes required on the 
MUB board. The connection from IC20, pin 
10, to the rest of the board must be broken 
by cutting a printed circuit land or simply by 
bending pin 10 up and out of its socket, if an 
1C socket is used. The SPDT switch should 
be mounted on the upper left corner of the 
board and connected as shown in Fig. 1. 
IC22 has an unused inverter, which feeds 
the UD1 line on the bus. This signal goes 
low whenever the MUB is addressed. 

Fig. 2 shows the changes to the 32K 
memory board. Jumpers El and E2 should 
be removed and a 2.2k resistor connected 
instead of E2. This would therefore per- 
manently enable the board for the full 32K 
of memory from 0000 to 7FFF. But a wire 
from UD1 up to pin 2 of U42 as shown 



•RINTED IN U S A. 


LATENT RCNDINC 



1 WK-7 


COMPLETE 1C INSERTER /EXTRACTOR KIT 


$29.95 | 


INDIVIDUAL COMPONENTS 


MOS-1416 

14-16 PIN MOS CMOS SAFE INSERTER 

$ 7.95 

M OS-2428 

24-28 PIN MOS CMOS SAFE INSERTER 

$ 7.95 

M OS-40 

36-40 PIN MOS CMOS SAFE INSERTER 

$ 7.95 

EX-1 

14-16 PIN EXTRACTOR TOOL 

$ 1.49 

EX-2 

24-40 PIN CMOS SAFE EXTRACTOR TOOL 

$ 7.95 


MINIMUM BILLING $25.00. ADD SHIPPING CHARGE $2.00. NEW YORK RESIDENTS ADD APPLICABLE TAX. 


OK MACHINE & TOOL CORPORATION 3455 CONNER ST., BRONX, N Y. 10475 (212) 994-6600/TELEX 125091 




v* Reader Service index— page 241 


Microcomputing, October 1980 121 








2.2K 

(NEW) 


/ 


_.\i 


FROM UD I >— 
IT 


U 42^ 0 — 


Fig. 2. Changes to 32K memory board. 

disables the memory board whenever the 
MUB is addressed and sends out a low 
pulse on the UD1 line. 

When the system is not being used with 
the multi-user software, the switch should 
be off. To run multi-user BASIC or Pilot, turn 
the switch on. The MUB can stay plugged in 
all the time. 


Another Way 

If you are interested in multi-program- 
ming, keep in mind a comment I made 
several months ago while discussing ex- 
pansion of the SWTP 32 K board to 64K. If 
the board is configured as two separate 32K 
sections, switched by a bit coming from a 
PIA, then you can do what the MUB does, 
but on a larger scale. Instead of just switch- 
ing 512 bytes in and out, you can switch 32K 
and provide full memory for each of two 
users. In one 32K segment, one user could 
do an assembly or run BASIC, while the 
other could do something completely differ- 
ent in his 32 K. 

Printer Interrupts 

One down-to-earth application of inter- 
rupts is to drive a printer. This is only prac- 
tical if you keep a memory. buffer filled with 
characters to be printed, while an interrupt 
routine empties it at the printer’s own pace. 
In this way, the program can run ahead of 
the printer and pause only when the buffer 
becomes filled up. 

In many programs, especially in BASIC, 
where the printer runs in bursts, this may 
speed up overall running time by as much 
as a factor of 2, because the printer can now 
run continuously instead of starting and 
stopping. The same is true of the program 
that drives it. 

Applied Microcomputer Systems (Box 68, 
Silver Lake, NH 03875) has been offering an 
interrupt-driven parallel printer driver for 
some time. It is intended primarily for the 
SWTP PR-40 printer. 

However, many of the newer printers, 
such as the Anadex, have a built-in buffer of 
1 K or more. These printers don’t really need 
much more buffering and can be driven 
directly from a parallel port without any fan- 
cy programming. 

A buffer would really be useful to drive a 
122 Microcomputing, October 1980 


serial printer, especially a slow one. For in- 
stance, a IK buffer on a 110-baud tele- 
printer would hold 100 seconds of output, 
allowing a program to get 100 seconds 
ahead of the printer This can be most im- 
pressive if you list a program on the printer, 
and can go on to something else while the 
printer is still listing. 

The programming needed to do this is 
easy to use. Included in this article are two 
versions of such an interrupt-driven printer 
driver. Both require an MP-S port on port 1, 
having a jumper in the IRQ position to 
enable interrupts. 

Listing 1 shows a simple routine that pro- 
vides only a 256-byte buffer and is intended 
to sit in a high RAM memory address such 
as A800. It essentially consists of three 
parts. 

An INITLZ routine must be called before 
any output to the printer driver is per- 
formed, and it sets up some pointers and 
flags, puts the address of the interrupt ser- 
vice subroutine (ISS) into the IRQ vector at 
A000 and returns to the calling program. 

The routine uses a 256-byte buffer in 
memory, and two pointers are used to keep 
track of buffer locations. INPTR always 
points to the next empty location in the buf- 
fer that can be filled with an incoming 
character, while OUTPTR always points to 
the next character to be printed. The buffer 
is looped back on itself, so that when the 
last location is filled or emptied, the next 
location to be filled or emptied is at the 
beginning again. It resembles a never- 
ending photo slide tray, with the pointer 
continuously cycling through the buffer. 

Whenever INPTR and OUTPTR are the 
same, the buffer is empty; whenever 
OUTPTR is equal to INPTR + 1, the buffer is 
full. These tests are used by the program to 
keep track of what is going on. 

BUSYFL is a flag that indicates whether 
the ACIA is busy. Each time a character is 
sent out to the ACIA, BUSYFL is set to 1. It 
stays at 1 until the ACIA finishes printing 
and generates an IRQ interrupt to ask the 
processor for another character, at which 
time it goes back to 0. Thus, 1 in BUSYFL 
means that the ACIA has started printing a 
character, but hasn’t yet finished it. 

The second part of the program is the IN- 
PUT routine, which is designed as a replace- 
ment for INEEE and is needed because IN- 
EEE in most monitors reconfigures the 
ACIA on port 1 to turn off interrupts. This 
would stop all printing if allowed, so INPUT 
does the same thing, but without the ini- 
tialization. 

The main part of the program is the OUT- 
PUT routine, which replaces OUTEEE. This 
routine was designed for use with standard 
programs such as BASIC, and so OUTPUT 
has some features that allow it to complete 
printing if BASIC returns to the monitor. 


(The monitor’s calling INEEE would other- 
wise stop printing even if there was still 
some data in the buffer, because INEEE 
normally initializes the ACIA to turn off its 
interrupt system.) 

This is done by putting into the calling 
program a print of a control-F at the end of 
output; in BASIC, this is done with PRINT 
CHR$(6). After this, the OUTPUT driver 
waits until the buffer is empty before return- 
ing to the calling program. This prevents the 
loss of the material in the buffer. Because 
of the way INPTR and OUTPTR are handled 
in this routine, this program cannot be 
placed in ROM. 

Listing 2, on the other hand, shows 
another version of this program. This ver- 
sion is in ROM and is part of the HUMBUG 
monitor I described in the September 1980 
Microcomputing. 

In this version, the buffer is a IK RAM 
area at D400 to D7FF. Because ten bits are 
now needed to point to a specific location in 
the buffer (as opposed to eight bits when 
the buffer was just 256 bytes long), INPTR 
and OUTPTR are now two bytes instead of 
one, and this complicates the program- 
ming. The INITLZ routine starts with a ten 
millisecond time delay to permit the ACIA 
on port 0 to finish any current operation and 
then clears INPTR, OUTPTR, POST AT (the 
flag used by FCROM in the main monitor to 
steer non-interrupt output to port 0) and 
BUSYFL. Then it places the address of the 
ISS routine in the IRQ location of monitor 
RAM (at A000), puts a nonzero number into 
IRQON to indicate that initialization has 
been done and exits. 

Just in case non-monitor programs want 
to use this routine, entry point IQPRNT is in- 
cluded just after the initialization routine. 
This entry is used by all such programs and 
automatically initializes whenever a 
control-E (hex 05) is printed. Otherwise, it 
falls through to OUTPUT. 

Flex 

Flex 2.0 uses SWI interrupts to handle its 
printer spooling feature. It changes the 
SWIJMP vector at A012 and does not 
restore it when done. Be careful if you try to 
debug a machine-language program with 
breakpoints after using Flex 2.0, since 
breakpoints wi|l now return to Flex 2.0 in- 
stead of to your monitor. 

Converting programs from miniFlex to 
Flex 2.0 or back is generally not too difficult. 
Basically, any machine-language program 
that uses disk operations maintains a file 
control block, or FCB, for every open disk 
file. In miniFlex, this FCB contains a total of 
192 bytes — 64 bytes of status control info, 
followed by 128 bytes for the contents of 
one disk sector. Since Flex 2.0 has 256 
bytes per sector, its FCB is 320 bytes long 
(64 + 256). The organization of the data in 


Listing 1. Self-contained serial printer driver. 


MAM SPEEDUP 

* INPTR POINTS TO THE NEXT EMPTY LOCATION IN BUFFER 

* OUTPTR POINTS TO THE NEXT LOCATION TO BE OUTPUT 

* IF INPTR=QUTPTR, BUFFER IS EMPTY 

* IF OUTPTR=INPTR+1 BUFFER IS FULL 

* BUSYFL INDICATES WHETHER ACIA IS BUSY 

* BUS YFL= 1 MEANS ACIA HAS BEEN STARTED ON OUTPUT, 

* BUT INTERRUPT INDICATING COMPLETION HAS 

* NOT YET ARRIVED 

* MONITOR AND I/O EQUATES 


(E1D1) 

0UTEEE 

EQU 


♦ei r i 


(E07E) 

PDATA 

EQU 


♦E07E 


(EODO) 

NONITR 

EQU 


♦ EODO 


(8004) 

ACIACR 

EQU 


♦8004 


(8005) 

ACIADR 

EQU 


ACIACR+1 


( A000 ) 

IRQPTR 

EQU 


♦A000 


( A800 ) 


0RG 


♦ A800 





* TRANSFER 

VECTORS INTO SPEEDUP 

A800 

7E 

A82E 

VECTOU 

JMP 


OUTPUT 


A803 

7E 

A820 

VECTIN 

JNP 


INPUT 


A806 

7E 

A809 

VECTIZ 

JNP 


INITLZ 





* INITIALIZE 

ROUTINE 


AB09 

B6 

8004 

IMITLZ 

LDA 

A 

ACIACR 

IN CASE ACIA IS BUSY, UAIT 

A80C 

47 



ASR 

A 


FOR CURRENT OPERATION TO COMPLETE 

A80D 

47 



ASR 

A 



A80E 

24 

F9 


BCC 


INITLZ 


A8 1 0 

7F 

A86B 


CLR 


INPTR 

INITIALIZE INPUT AND OUTPUT PTRS 

A81 3 

7F 

A890 


CLR 


OUTPTR 


A81 6 

7F 

A8F4 


CLR 


BUSYFL 

ACIA NOT BUSY 

A819 

C£ 

A876 


LDX 


BISS 

POINTER TO ISS ROUTINE 

A81C 

FF 

A000 


STX 


IRQPTR 

INSERT IRQ TRANSFER ADDRESS 

A81F 

39 



RTS 



AND RETURN 




* INPUT FROM 

TERMINAL 

ROUTINE (NO INTERRUPTS USED) 

A820 

B6 

8004 

INPUT 

LDA 

A 

ACIACR 

UAIT FOR CHARACTER 

A823 

47 



ASR 

A 



A824 

24 

FA 


BCC 


INPUT 


A826 

B6 

8005 


LDA 

A 

ACIADR 

GET THE CHARACTER 

A829 

8D 

03 


BSR 


OUTPUT 

ECHO IT 

A82B 

84 

7F 


AND 

A 

BI7F 

STRIP OFF PARITY BIT 

A82D 

39 



RTS 







* OUTPUT TO TERMINAL 

ROUTINE 

A82E 

81 

06 

OUTPUT 

CMP 

A 

• ♦06 

END OF DATA? 

A830 

27 

15 


BEQ 


DONE 

YES 

A832 

01 



NOP 




A833 

OF 



SEI 



DISABLE INTERRUPT SYSTEM 

A834 

7B 

A8F4 


TST 


BUSYFL 

IS ACIA BUSY? 

A837 

26 

IB 


BNE 


BUSY 

YES 

A839 

B7 

8005 

FREE 

STA 

A 

ACIADR 

NO; ACIA IS FREE SO LET'S OUTPUT 

A83C 

7 C 

A8F 4 


INC 


BUSYFL 

TURN ON BUSY FLAG 

A83F 

86 

35 


LDA 

A 

N 435 

ENABLE ACIA TRANSMITTER FOR IRQ 

A841 

B7 

8004 


STA 

A 

ACIACR 


A844 

01 



NOP 




A845 

OE 



CL I 



ENABLE INTERRUPTS 

A846 

39 



RTS 



AND RETURN TO MAIN PROGRAM 




♦ IF BONE, 

CLEAN UP AND RETURN 

A847 

7D 

A8F4 

DONE 

TST 


BUSYFL 

UAIT FOR BUFFER TO EMPTY 

A84A 

26 

FB 


BNE 


DONE 


A84C 

86 

15 


LDA 

A 

♦♦15 

DISABLE ACIA TRANSMITTER INTERRUP 

A84E 

•7 

8004 


STA 

A 

ACIACR 


A851 

01 



NOP 




A852 

OF 



SEI 



DISABLE INTERRUPTS 

A853 

39 



RTS 







* ACIA 

IS BUSY, SO STORE IN BUFFER 

A854 

37 


BUSY 

PSH 

B 



A855 

F6 

A86B 

BUSY1 

LDA 

B 

INPTR 

IS BUFFER FULL? 

A858 

5C 



INC 

B 



A859 

FI 

A890 


CMP 

B 

OUTPTR 


A85C 

26 

04 


BNE 


N0TFUL 





♦ FULL, 

, SO 

UAIT UNTIL 

SOME SPACE IS AVAILABLE 

A85E 

01 



NOP 




A85F 

OE 



CLI 



ENABLE INTERRUPTS 

A860 

20 

F3 


BRA 


BUSY1 

GO BACK AND CHECK AGAIN 




* NOT FULL, 

, SO STORE 

CHARACTER IN BUFFER 

A862 

01 


N0TFUL 

NOP 




A863 

OF 



SEI 



DISABLE INTERRUPTS IF ENABLED ABO' 

A864 

FF 

A8F2 


STX 


SAVEX 

SAVE INDEX REGISTER 

A867 

CE 

A8F5 


LDX 


•BUFFER 


( A86B ) 

INPTR 

EQU 


*♦1 

CAUTION - NOT PROMMABLE 

A86A 

A7 

00 


STA 

A 

o,x 

STORE INTO NEXT EMPTY BUFFER LOC 

A86C 

7C 

A86B 


INC 


INPTR 

INCREMENT IN POINTER 

A86F 

01 



NOP 




A870 

OE 



CLI 



ENABLE INTERRUPTS 

A871 

33 



PUL 

B 


RESTORE B AND INDEX 

A872 

FE 

A8F2 


LDX 


SAVEX 


A875 

39 



RTS 



RETURN 




♦INTERRUPT 

SERVICE ROUTINE 

A876 

B6 

8004 

1SS 

LDA 

A 

ACIACR 

DID SOMETHING ELSE INTERRUPT? 

A879 

2A 

20 


BPL 


ERROR 

IF YES 


♦ OK - INTERRUPT CAME FROM ACIA 



SAVE $$ APPLE® AND TRS-80® 


NEWDOS/80 

Powerful Disk Operating Sysrem for rhe TRS-60® designed for the sophisticated 
user ond professional programmer. 

NEWDOS/60 is nor meonr ro replace rhe presenr version of NEWDOS 2.1 which 
satisfies mosr users, bur is o carefully planned upward enhancement. 

• New BASIC Commands with variable record lengths up to 4095. 

• Mix or march drives 35, 40, 77, 80TK. 

• Security boot-up for BASIC or machine code application programs. 

• Improved editing commands. 

• Enhanced RENUMBER that allows relocation. 

• Device handling for routing ro display and printer simultaneously. 

• CDE function; striking of C, D, ond E keys allows user ro enter a mini-DOS. 

• Compatible with NEWDOS and TRSDOS 2.3. 

• Superzap 3.0 and 2.1 utilities. 


rirer u mmrwj. 

*149 


NEW DOS FOR APPLE® "APEX" 

The connplere APEX package with operating system, 
assembler, editor and user manuals. The package also includes * 
a complete set of utilities to maintain files on single or multiple 
drive systems. (Specify 5 inch Apple disk or 8 inch disk.) w M 


RELATED SOFTWARE 
XPLO *79 

FOCAL™ *59 


SAVE ON APPLE II 16K 

FREE MTI MEMORY UPGRADE KIT TO 48 K 
WITH PURCHASE OF APPLE II 16K 


(MTI ONLY) 


*1195 


TRS-80® SOFTWARE 

NEW DOS+ 35 track *99 

AJA Business Program *289 

Disk Head Cleaner *18 

Disk Drive Alignment Program . *109 
Data Bose Program *99.95 

MOD I "8" DISK SYSTEM 

• One SA800R DOS and Coble 

• Chassis and Power Supply 

*1095 


FACTORY 

CLEARANCE 


DISK DRIVE 
SALE! 

Complete with power suppy and 
chassis. 

TF-3 Shugarr SA400 $359 

TF-1 Perrec FD200, 40 track . S389 

TF-5MPI B51. 40 track S379 

TF-7 Micropolis, 77 track $595 

TDH-1 Dual sided, 35 track $495 

MAX Disk 2: 10 Megabyte . . $4995 


Demo single or dual heod MPI disk drive, 
complere with Power Supply and Chassis. 
Full wonronry. 

TF5D 40 TK S279 

TDH-1 D Dual 35 TK $419 

Limited Quantifies 
TF 8 80 TK DISK DRIVE 

Double Your Capacity $639 

TF-9 DUAL 80 DISK DRIVE 
Quadruple Your Copocity $799 

DISK DRIVE SYSTEM 

• 2 ShugarT SA400 
with power/chassis 

• Cable 

SPECIAL PRICE ONLY 


> Interface 32K 

> 1 35-Track DOS+ 

*1199 


★ DARE DRIVES FOR ANY MICROCOMPUTERS 

Perrec FD200 S282 FD250 $359 

Shugorr SA400 $279 SA800 $479 

MPIB52 $349 051 $279 

^Registered trade mark of Radio Shack ond Apple 


OKIDATA PRINTER 

LIST $949 SAOO 
OUR PRICE 'OW 


PRINTERS 

Centronics 779 >1069 ANADEX D8000 >925 

Centronics 737 ‘899 700 ‘1095 

Centronics 701-1 ‘1795 702 ‘1795 

Spinwriter-NEC ‘2549 ANADEX 9501 ‘1599 

Base 2 Printer 80. 132 col. graphics ‘599 



*^30 


EA 


/VIICROCO/VIPUER 

TECHNOLOGY 

INCORPORATED 


iS 349 


ASK FOR FREE 
CATALOGUE 


3304 W. MacArthur 
Santa Ana, CA 92704 
(714) 979-9923 


Apparat,lnc. 


4401 South Tamarac Parkway 
Denver, Co 80237 
(303) 741-1778 


Telex #678401 TABIRIN 

ALL PRICES CASH DISCOUNTED • FREIGHT FOB FACTORY 


v* Reader Sen/ice index— page 241 


Microcomputing, October 1980 123 



MARK GORDON 

COMPUTERS 

DIVISION OF MARK GORDON ASSOCIATES, INC. ^239 

15 KENWOOD ST., CAMBRIDGE, MASSACHUSETTS 02139 


(617)491-7505 

COMPUTERS 

Level-11 4I< System 529.00 

Level-ll I6K System 659.00 

Model-ll 64K System 3499.00 

DISK DRIVES 

40 Track 5'/4 inch drive 3 19.00 

77 Track 5'/4 inch drive 549.00 

4 Disk Drive Cable 39.00 

PRINTERS 

Centronics 730 599.00 

Centronics 779-2 799.00 

Centronics 737 849.00 

Comprint 9 1 2p 599.00 

Integral Data 440G 999.00 

NEC 55 1 0 w-tractor 2679.00 

Tl 810 Basic 1895.00 

MISC HARDWARE 

Expansion int. TRS-80(OI<) 249.00 

Novation Cat modem 159.00 

16K Memory Kit 49.00 

Leedex Monitor 109.00 

Printer Cable for above 49.00 

ISO-2 Isolator 54.00 

AC LINE FILTER 24.00 

STORAGE MEDIA 

Verbatim-box IO-5'/4 25.00 

Memorex-box lO-S'A 22.00 

Plastic Storage Box 5.00 

OPERATING SYSTEMS 

NEWDOS by APPARAT INC 49.00 

NEWDOS+ by APPARAT INC 99.00 

MMS FORTH DISKETTE-PRIMER 79.95 

DISKETTE TRS-80* 


BUSINESS SOFTWARE BY SBSG 

Free enhancements and upgrades to registered owners for 
the cost of media and mailing. 30 day free telephone sup- 
port. User reference on request. 

Fully Interactive Accounting Package, General Ledger, 
Accounts Payable, Accounts Receivable and Payroll. 


Report Generating. 

Complete Package (requires 3 or 4 drives) $475.00 

Individual Modules (requires 2 or 3 drives) $ 1 25.00 

Inventory II: (requires 2 or 3 drives) $ 99.00 

Mailing List Name & Address II 
(requires 2 drives) $129.00 

Intelligent Terminal System ST-80 III: $ 1 50.00 

The Electric Pencil from Michael Shrayer $ I 50.00 

File Management System: $ 49.00 


FINE PRINT 

TRS-80 is a Tandy Corporation trademark. Use of above operating sys- 
tems may require the use of Radio Shack TRS-DOS. Radio Shack 
equipment subject to the will and whim of Radio Shack. 

ORDERING INFORMATION 

We accept Visa and Mastercharge. We will ship C.O.D. certified check 
or money orders only. Massachusetts residents add 5 percent sales tax. 

The Company cannot be liable for pictorial or typographical inaccuracies. 


A87B 

7F 

A8F4 


CLR 


BUSYFL 

ACIA NO LONGER BUSY. 

A87E 

B6 

A86B 


LDA 

A 

INPTR 

IS THE BUFFER EMPTY? 

A881 

B1 

A890 


CMP 

A 

OUTPTR 


A884 

26 

06 


BNE 


NOTEMT 

NO 

A886 

86 

15 


LDA 

A 

Ml 5 

DISABLE ACIA TRANSMITTER INTERRUPTS 

A888 

B7 

8004 


STA 

A 

ACIACR 


A88B 

3B 



RTI 



RETURN 




* BUFFER NOT 

EMPTY, SO 

OUTPUT THE NEXT CHARACTER 

A88C 

CE 

A8F5 

NOTEMT 

LDX 


RBUFFER 


( A890 ) 

OUTPTR 

EQU 


*+1 

CAUTION - NOT PROMMABLE 

A88F 

A6 

00 


LDA 

A 

o,x 

GET NEXT CHARACTER 

A891 

B7 

8005 


STA 

A 

ACIADR 

OUTPUT IT 

A894 

7C 

A890 


INC 


OUTPTR 

INCREMENT OUTPUT POINTER 

A897 

7C 

A8F4 


INC 


BUSYFL 

ACIA IS BUSY AGAIN 

A89A 

3B 



RTI 



RETURN TO PROGRAM 




♦ ERROR ROUTINE - INTERRUPT NOT CAUSED BY ACIA 

A89B 

86 

15 

ERROR 

LDA 

A 

Ml 5 

DISABLE ACIA INTERRUPTS 

A89D 

B7 

8004 


STA 

A 

ACIACR 


A8A0 

B6 

A86B 

ERR0R1 

LDA 

A 

INPTR 

SEE IF BUFFER IS EMPTY 

A8A3 

B1 

A890 


CMP 

A 

OUTPTR 


A 8 A A 

27 

13 


BEQ 


EMPTY 

YES 

A8A8 

B6 

A890 


LDA 

A 

OUTPTR 

NO, SO EMPTY IT BEFORE QUITTING 

A8AB 

B7 

A8B2 


STA 

A 

GETCHR 


A8AE 

CE 

A8F5 


LDX 


NBUFFER 


( A8B2) 

GETCHR 

EQU 


•4+1 

CAUTION - NOT PROMMABLE 

A8B1 

A6 

00 


LDA 

A 

0,X 

GET NEXT CHARACTER 

A8B3 

BD 

E1D1 


JSR 


OUTEEE 

PRINT IT 

A8B6 

7C 

A890 


INC 


OUTPTR 

INCREMENT POINTER 

A8B9 

20 

E5 


BRA 


ERR0R1 

GO BACK AND TEST AGAIN 




♦BUFFER EMPTY, SO PRINT ERROR MESSAGE AND QUIT 

A8BB 

CE 

A8C4 

EMPTY 

LDX 


NERRHSG 


A8BE 

BD 

E07E 


JSR 


PDATA 

PRINT ERROR MESSAGE 

A8C1 

7E 

EODO 


JMP 


MONITR 

RETURN TO MONITOR 

A8C4 

OD 


ERRMSG 

FCB 


$D , $ A , 0 , 0 

,0,0 

A8CA 

45 



FCC 


/ERROR - 

INTERRUPT NOT CAUSED BY ACIA / 

A8F 1 

04 



FCB 


$04 





♦ DATA 

ETC 




A8F2 



SAVEX 

RMB 


2 

INDEX STORAGE 

A8F 4 



BUSYFL 

RhB 


1 

ACIA BUSY FLAG 

A8F5 



BUFFER 

RMB 


256 

256-BYTE BUFFER 





END 





* PORT 0 PRINTER INTERRUPT DRIVERS 

* INPTR POINTS TO THE NEXT EMPTY LOCATION IN BUFFER 

* OUTPTR POINTS TO THE NEXT LOCATION TO BE OUTPUT 

* IF INPTR=OUTPTR, BUFFER IS EMPTY 

* IF 0UTPTR=INPTR+1 BUFFER IS FULL 

* BUSYFL INDICATES UHETHER ACIA IS BUSY 

* BUSYFL*! MEANS ACIA HAS BEEN STARTED ON OUTPUT, 

* BUT INTERRUPT INDICATING COMPLETION HAS 

* NOT YET ARRIVED 


* INITIALIZE ROUTINE 


ECCF 

FF 

D04A 

INITLZ STX 


SAVEDX 


ECD2 

CE 

04E2 

LDX 


M04E2 


ECD5 

09 


INUAIT DEX 



UAIT ABOUT 10 MILLISEC 

ECD6 

26 

FD 

BNE 


INUAIT 

FOR ACIA TO FINISH IF BUSY 

ECD8 

CE 

0000 

LDX 


10 


ECDB 

FF 

D051 

STX 


INPTR 


ECDE 

FF 

D053 

STX 


OUTPTR 

RESET INPUT AND OUTPUT POINTERS 

ECE1 

7F 

DOOO 

CLR 


POSTAT 

TURN OFF NORMAL PORT 0 OUTPUT 

ECE4 

7F 

D050 

CLR 


BUSYFL 

ACIA NOT BUSY 

ECE7 

CE 

ED60 

LDX 


mss 

RESET IRQ POINTER ADDRESS TO ISS 

ECEA 

FF 

AOOO 

STX 


IRQ 


ECED 

7F 

D05A 

CLR 


IRQON 


ECFO 

7C 

D05A 

INC 


IRQON 

TURN ON IRQ IN PROGRESS FLAG 

ECF3 

FE 

D04A 

LDX 


SAVEDX 


ECF6 

39 


RTS 



AND RETURN 




• NON-MONITOR ENTRY 

POINT 

ECF7 

81 

05 

IQPRNT CMP 

A 

M05 

ON CONTROL-E, GO INITIALIZE 

ECF9 

27 

D4 

BEQ 


INITLZ 

OTHERWISE FALL THROUGH TO OUTPUT 




♦ OUTPUT TO TERMINAL 

ROUTINE 

ECFB 

81 

06 

OUTPUT CMP 

A 

M06 

END OF DATA? 

ECFD 

27 

15 

BEQ 


DONE 

YES 

ECFF 

01 


NOP 



NO 

EDOO 

OF 


SEI 



DISABLE INTERRUPT SYSTEM 

ED01 

7D 

D050 

TST 


BUSYFL 

IS ACIA BUSY? 

ED04 

26 

IE 

BNE 


BUSY 

YES 

ED06 

B7 

8001 

FREE STA 

A 

ACIADR 

NO; ACIA IS FREE SO LET'S OUTPUT 

ED09 

7C 

D050 

INC 


BUSYFL 

TURN ON BUSY FLAG 

EDOC 

86 

35 

LDA 

A 

M35 

ENABLE ACIA TRANSMITTER FOR IRQ 

EDOE 

B7 

8000 

STA 

A 

ACIACR 


ED1 1 

01 


NOP 




EDI 2 

OE 


CLI 



ENABLE INTERRUPTS 

EDI 3 

39 


RTS 



AND RETURN TO MAIN PROGRAM 




• IF DONE, 

CLEAN UP 

AND RETURN 

EDI 4 

7D 

D050 

DONE TST 


BUSYFL 

WAIT FOR BUFFER TO EMPTY 

EDI 7 

26 

FB 

BNE 


DONE 


EDI 9 

86 

15 

LDA 

A 

M15 

DISABLE ACIA TRANSMITTER INTERRUPTS 

ED1B 

B7 

8000 

STA 

A 

ACIACR 


ED1E 

01 


NOP 




EDI F 

OF 


SEI 



DISABLE INTERRUPTS 


124 Microcomputing, October 1980 


Listing 2. ROM able printer driver with IK buffer. 


the first 64 bytes is the same in both 
systems, so changing from one Flex to the 
other involves just changing the size of the 
FCB. 

A second change involves the addresses 
of Flex routines. MiniFlex is located 
at addresses 7000-7FFF, while Flex 2.0 is at 
A080-BFFF. Thus, all references to these 
locations must be changed. See Table 1 for 
a fairly complete list of equivalents be- 
tween the two. Mini-Flex does not keep the 
date as Flex 2.0 does, so changing from 
Flex 2.0 back to miniFlex may require delet- 
ing all references to dates. 

Finally, there is a slight difference in how 
the two systems handle the SETEXT 
subroutine. When this routine is executed, 
miniFlex changes the contents of the index 
register, while Flex 2.0 doesn’t. Thus, if you 
are converting a program from Flex 2.0 back 
to miniFlex, you may want to save index 
register contents before jumping to 
SETEXT and then restore it. 

While converting programs from Flex 2.0 
back to miniFlex may not be common, I 
tried it recently to convert Programma’s 
SPL/M compiler. The conversion was sim- 
ple. 

Next Time 

A review and detailed comparison of the 
SPL/M compiler with several others (Mi- 
croware’s ABASIC, SSB’s FORTRAN and 
Hemenway’s STRUBAL + ) will appear in up- 
coming installments.* 


Naae 

Flex 1 & 2 
Address 

MiniFlex 

Address 

LINBUF 

A080 

7000 

FCB 

A840 

7740 

EOLCHR 

AC02 

7082 

MONTH 

ACOE 

- 

DAY 

ACOF 

- 

YEAR 

AGIO 

- 

LSTERH 

AC1 1 

7091 

LINPTR 

AC14 

7094 

CURCHR 

AC1 8 

709A 

COLDS 

ADOO 

7100 

WARMS 

AD03 

7103 

RENTER 

AB06 

7106 

0UTCH2 

AD12 

7136 

GETCHR 

AD 1 5 

71 OF 

PUTCHR 

ADI 8 

7112 

INBUFF 

ADI B 

7115 

PSTRNG 

ABIE 

7118 

CLASS 

AB21 

71 1 B 

PCRLF 

A 1)24 

71 1 E 

NXTCH 

AD27 

7121 

RSTRIO 

AB2A 

7124 

GETFIL 

AD2D 

7127 

LOAD 

AD30 

712A 

SETEXT 

AD33 

71 2D 

ABDBX 

AD36 

7130 

OUTBEC 

AD39 

7133 

OUTHEX 

AD3C 

7139 

RPTERR 

AD3F 

713C 

GETHEX 

AD42 

71 3F 

OUTABR 

AD45 

- 

INDEC 

AD48 

- 

DOCMND 

AD4B 

7142 

HE X AD J 

B1V8 

74BA 

QPREAD 

B2A4 

758A 

FMSCLS 

B403 

7803 

FMS 

B406 

7806 


Table 1. Flex routine addresses. 



Featuring 

QAA 1802 

■ V COSMAC CPU 

a powerful home computer system, starting for just $99.95-a price that 


Own a 


gets you up and running the very first night . with your own TV for a video 
display. $99.95 ELF II includes RCA 1602 8 bit microprocessor addressable to 64k 
bytes with DMA, interrupt, 16 registers, ALU, 256 byte RAM, full hex keyboard, 
two digit hex output display, stable crystal clock for timing purposes, RCA 1861 
video 1C to display your programs on any video monitor or TV screen and 5 slot 
plug in expansion bus Hess connectors ) to expand ELF II into a giant! 

ELF II Explodes Into A Giant! 

Master ELF Il's $99.95 capabilities, then expand with GIANT BOARO 
KLUGE BOARD ,4k RAM B0AR0S ..TINY BASIC ASCII KEYB0AR0 
LIGHT PEN. . ELF BUG MONITOR COLOR GRAPHICS Er MUSIC SYSTEM 
TEXT EDITOR ASSEMBLER DISASSEMBLER VIDEO DISPLAY BOARD 

. . . and, another great reason for getting your ELF now- 

BREAKTHROUGH! 

Netronics proudly announced the release of 
the first 1802 FULL BASIC, written by L. 
Sandlin, with a hardware floating point RPN 
math package (requires 8k RAM plus ASCII and 
video display boards), $79.95 plus $2 p&h. Also 
available for RCA VIP and other 1802 systems 
(send for details)! 

Master This Computer In A Flash! 

Regardless of how minimal your computer background is now, you can learn 
to program an ELF II in almost no time at all. Our Short Course On Micropro- 
cessor b Computer Programming- written in non technical language-guides you 
through each of the RCA COSMAC 1802 s capabilities, so you'll understand 
everything ELF II can do and how to get ELF II to do it! Don't worry if you've 
been stumped by computer books before. The Short Course represents a major 
advance in literary clarity in the computer field. You don't have to be a computer 
engineer in order to understand it. Keyed to ELF II, it’s loaded with "hands on" 
illustrations. When you're finished with the Short Course, neither ELF II nor the 
RCA 1802 will hold any mysteries for you. 

In fact, not only will you now be able to use a personal computer creatively, 
you'll also be able to read magazines such as BYTE INTERFACE AGE P0PU 
LAR ELECTRONICS and PERSONAL COMPUTING and fully understand the 
articles. And, you'll understand hgw to expand ELF II to give you the exact 
capabilities you need! 

If you work with large computers, ELF II and the Short Course will help you 
understand what they're doing. 

Get Started For Just $99.95, Complete! 

$99.95 ELF II includes all the hardware and software you need to start writing 
and running programs at home, displaying video graphics on your TV screen and 
designing circuits using a microprocessor -the very first night-even if you’ve 
never used a computer before. 

ELF II connects directly to the video input of your TV set, without any addi- 
tional hardwire. Or, with an $8.95 RF modulator (see coupon below), you can 
connect ELF II to your TV's antenna terminals instead. 

ELF II has been designed to play all the video games you want, including a 
fascinating new target/missile gun game that was developed specifically for ELF 
II. But games are only the icing on the cake. The real value of ELF II is that it 
gives you a chance to write machine language programs-and machine language 
is the fundamental language of all computers. Of course, machine language is 
only a starting point. You can also program ELF II with assembly language and 
tiny BASIC. But ELF Il's machine language capability gives you a chance to 
develop a working knowledge of computers that you can't get from running only 


Write and run programs- the 
wry first night-even if you’ve 
never used a computer before! 

You’re up and running with video graphics for just $99.95 — 
then use low cost add-ons to create your own personal system 
that rivals home computers sold for 5-times ELF Il’s low price! 

pre recorded tape cassettes. 

ELF II Gives You The Power To Make Things Happen! 

Expanded, ELF II can give you more power to make things happen in the real 
world than heavily advertised home computers that sell for a lot more money. 
Thanks to an ongoing committment to develop the RCA 1802 for home computer 
use, the ELF II products-being introduced by Netronics- keep you right on the 
outer fringe of today's small computer technology. It's a perfect computer for 
engineering, business, industrial, scientific and personal applications. 

Plug in the GIANT BOARD to record and play back programs, edit and 
debug programs, communicate with remote devices and make things happen in 
the outside world. Add Kluge (prototyping) Board and you can use ELF II to 
solve special problems such as operating a complex alarm system or controlling 
a printing press. Add 4k RAM Boards to write longer programs, store more 
information and solve more sophisticated problems. 

ELF II add ons already include the ELF II Light Pen and the amazing ELF BUG 
Monitor-two extremely recent breakthroughs that have not yet been duplicated 
by any other manufacturer. 

The ELF-BUG Monitor lets you debug programs with lightening speed because 
the key to debugging is to know what's inside the registers of the microproces 
sor. And, with the ELF BUG Monitor, instead of single stepping through your 
programs, you can now display the entire contents of the registers on your TV 
screen. You find out immediately what's going on and can make any necessary 
changes. 

The incredible ELF II Light Pen lets you write or draw anything you want on a 
TV screen with just a wave of the "magic wand." Netronics has also introduced 
the ELF II Color Graphics Er Music System-more breakthroughs that ELF II 
owners wete the first to enjoy! 

ELF II Tiny BASIC 

Ultimately, ELF II understands only machine language-the fundamental coding 
required by all computers. But, to simplify your relationship with ELF II, we've 
introduced an ELF II Tiny BASIC that makes communicating with ELF II a 
breeze. 

Now Available! Text Editor, Assembler, 

Disassembler And A New Video Display Board! 

The Text Editor gives you word processing ability and the ability to edit 
programs or text while it is displayed on your video monitor. Lines and charac- 
ters may be quickly inserted, deleted er changed. Add a printer and ELF II can 
type letters for you-error free-plus print names and addresses from your 
mailing list! 

ELF Il's Assembler translates assembly language programs into hexidecimal 
machine code for ELF II use. The Assembler features mnemonic abbreviations 
rather than numerics so that the instructions on your programs are easier to 
read -this is a big help in catching errors. 

ELF Il's Disassembler takes machine code programs and produces assembly 
language source listings. This helps you understand the programs you are 
working with and improve them when required. 

The new ELF II Video Display Board lets you generate a sharp, professional 
32 or 64 character by 16 line upper and lower case display on your TV screen or 
video monitor-dramatically improving your unexpanded $99.95 ELF II. When you 
get into longer programs, the Video Display Board is a real blessing! 

' Now Available! 

□ A-D/D-A Board Kit includes 1 channel (expandable to 



4) D-A, A-D converters, $39.95 plus $2 postage & hand- 
ling. . 

□ PILOT Language— A new text-oriented language that 
allows you to write educational programs on ELF II with 
speed and ease! Write programs for games ... unscram- 
bling sentences. . .spelling drills. . .“fill in the missing 
word” tests, etc.! PILOT is a must for any ELF II owner 
with children. PILOT Language on cassette tape, only 
$19.95 postpaid! 

□ Game Package on cassette tape (requires 4k RAM), 
$9.95 plus $2 postage & handling. 

Clip Here and Attach to Your Order Below 


PHONE ORDERS ACCEPTED! 
Call (203) 354-9375 


Netronics R&D Ltd., Dept. K 10 
333 Litchfield Road, New Milford, CT 06776 
Yes! I want my own computer! Please rush me— 

□ RCA COSMAC ELF ll language, u s a learning breakthrough lor engineers and laymen 
kit at $99 95 plus $3 postage and alike $5 postpaid 

- . , han dlmg (requires 6 3 to 8 volt AC power □ Qeiuxe Metal Cabinet with plexiglas dust cover for ElF It 

supplyl $?9 95 plus $2 50 p&h _ _ . 

□ Power Supply (required) $4 95 postpaid D i am also enclosing payment (including postage & handling) for CHARGE IT! Exp. Date 


Total Enclosed $ 

(Conn, res add tax) 


□ RCA 1802 User s Manual $5 postpaid the items checked below 1 

□ Tom human s Short Course On Microprocessor & Computer □ I want my ELF II wired and tested with power supply. RCA 
Programming teaches you |ust about everything there is to know 1802 User's Manual and Short Course— all for just $149.95 plus 

about ELF II or any RCA 1802 computer Written in non technical S3 p&h. Account# 

ALSO AVAILABLE FOR ELF II • 


(Bank# _ 




□ GIANT BOARO™ kit with cassetle I/O RS 232 
C/TTY I/O 8-bit P I/O decoders tor 14 separate I/O 
instructions and a system monitor /editor $39.95 plus 

$2 p&h 

□ Kluge (Prototype) Board accepls up to 36 1C s 
SI 7 00 plus $1 p&h 

□ 4k Static RAM kit. Addressable to any 4k page to 
64k $89 95 plus S3 p&h 

□ Gold plated 86-pin connectors (one required lor each 
plug in board) $5.70 ea postpaid 

□ Expansion Power Supply (required when adding 4k 
RAM! $34 95 plus $2 p&h 

□ Professional ASCII Keyboard kit with 128 ASCII 
upper /lower case set 96 printable characters onboard 
regulator, parity logic selection and choice o! 4 hand- 
shaking signals to mate with almost any computer 
$64 95 plus $2 p&h 

□ Deluxe metal cabinet for ASCII Keyboard. $19.95 

plus S2 50 p&h 

U Video Display Board kit lets you generate a sharp, 
professional 32 or b4 character by ib line upper and 
lower case display on your tv screen or video monitor— 
dramatically improving your unexpanded $99 95 ELF II 
(Fits inside ASCII Keyboard cabinet ) $89.95 
■^^plus $2 p&h 

■ □ ELF II Tiny BASIC on cassette tape Com- 

m ands in clude SAVE LOAD ± X . -r , ( ) 


26 variables A Z LET. IF/THEN. INPUT. PRINT. GO TO. 
GO SUB RETURN END. REM. CLEAR LIST RUN. 
PLOT. PEEK POKE Comes fully documented and in- 
cludes alphanumeric generator required to display 
alphanumeric characters directly on your tv screen with 
out additional hardware Also plays tick-tack-toe plus a 
drawing game that uses ELF II s hex keyboard as a joy 
stick 4k memory required $14.95 postpaid 

□ Tom Pittman s Short Course on Tiny Basic lor ELF II. 
$5 postpaid 

□ ELF-BUG™ Oeluxe System Monitor on cassette 
tape Allows displaying the contents ol all registers on 
your tv at any point in your program Also displays 24 
bytes ol memory with lull addresses, blinking cursor 
and auto scrolling A musl for the serious programmer 1 
$14 95 postpaid 

□ Text Editor on cassette tape gives you the ability to 
insert, delete or edit lines and words from your programs 
while they are displayed on your video monitor (Add 
printer and you can use ELF. II to type error tree letters 
plus insert names and addresses trom your mailing lot. ) 
$19.95 postpaid 

□ Assembler on cassette tape translates assembly 
language programs into hexidecimal machine code for 
ELF II use Mnemonic abbreviations lor instructions 
(rather than numerics) make programs easier to read 
and help prevent errors $19.95 postpaid 

□ Disassembler on cassette tape takes machine code 


programs and produces assembly language source list- 
ings to help you understand and improve your programs 
$19 95 on cassette tape 

SAVE S9 90— Text Editor. Assembler & Disassembler 
purchased together only $49.95! (Require Video Ois 
play Board plus 4k memory ) 

□ ELF II Light Pen. assembled & tested $7.95 plus $1 
p&h 

□ ELF II Color Graphics & Music System Board kit 

$49 95 plus $? p&h 

□ ELF ll connects directly to the video input of your tv 
set without additional hardware To connect ELF ll to 
your antenna terminals instead, order RF Modulator. 
$8.95 postpaid 

Coming Soon: A-D. D-A Converter. Controller Board 

and more 1 

Print 

Name 


City _ 
Slate _ 


CALL TOLL FREE: 800 243-7428 i 

_ _ DEALER INQUIRIES INVITED 


iS Reader Service index— page 241 


Microcomputing, October 1980 125 


MARK GORDON 

COMPUTERS 

DIVISION OF MARK GORDON ASSOCIATES, INC. ^84 

15 KENWOOD ST., CAMBRIDGE, MASSACHUSETTS 02139 
(617)491-7505 


SORT-80 

Produced exclusively for 
Mark Gordon Computers by SBSG 

TRS-80* disk files may be sorted and merged 
using SORT-80, the general purpose, machine 
language, sort program. Written in assembly 
language for the Z-80 microprocessor, it can: 

—Sort files one disk in length 
—Sort Direct Access, Sequential Access and 
Basic Sequential Access files 
—Reblock and print records 

— Recontrol files from disk 

— Be executed from DOS 
—Be inserted in the job stream 
—Allow parameter specification 

• input/output file specification 

• input/output record size 

• lower/upper record limit 

• print contents of output file 

• input/output file key specifiers 

The minimum requirement is a 32K TRS-80* 
Level II computer with one disk drive or a sin- 
gle drive Model II computer. It will operate on 
35, 40 and 77 track drives, and has been tested 
on TRSDOS 2,1, 2.2, 2.3, NEWDOS 2.1, 3.0 and 
VTOS 3.0.1. It is compatible with most ma- 
chine language printer drivers. Sort time is 
fast: for example, a 32K file will sort in approxi- 
mately 40 seconds. $59. 

InfoBox is the easiest-to-use information man- 
ager available for the TRS-80*. It’s ideal for 
keeping track of notes to yourself, phone num- 
bers, birthdays, inventories, bibliographies, 
computer programs, music tapes, and much 
more. This fast assembly language program 
lets you enter free-format data, variable length 
items and lets you look up items by specifying 
a string of characters or words that you want 
to find. You can also edit and delete items. 
Items entered into InfoBox can be written to 
and read from cassette and disk files. All or 
selected items can be printed on a parallel or 
serial printer. InfoBox occupies 3K. Specify 
cassette or disk version. $29.95 



*TRS*80 is a Tandy Corp. Trademark 


ED20 

7 F 

D05A 

CLR 


IRQON 

TURN OFF CURRENT IRQ OUTPUT FLAG 

ED23 

39 


RTS 







♦ ACIA IS BUSY, SO STORE IN BUFFER 

ED24 

37 


BUSY PSH 

B 



ED25 

FF 

D048 

STX 


SAVEX 

SAVE INDEX REGISTER 

ED28 

FE 

D051 

BUSY1 LDX 


INPTR 

IS BUFFER FULL? 

ED2B 

08 


I NX 




ED2C 

8C 

0400 

CPX 


MI0400 

FIX OVERFLOW OVER IK 

ED2F 

26 

03 

BNE 


BUSY2 


ED31 

CE 

0000 

LDX 


*$0000 


ED34 

BC 

D053 

BUSY2 CPX 


0UTPTR 


ED37 

26 

04 

BNE 


N0TFUL 





♦ FULL, SO 

WAIT UNTIL 

SOME SPACE IS AVAILABLE 

ED39 

01 


NOP 




ED3A 

OE 


CLI 



ENABLE INTERRUPTS 

ED3B 

20 

EB 

BRA 


BUSY1 

GO BACK AND CHECK AGAIN 




♦ NOT FULL, 

, SO STORE CHARACTER IN BUFFER 

ED3D 

01 


N0TFUL NOP 




ED3E 

OF 


SEI 



DISABLE INTERRUPTS IF ENABLED ABOVE 

ED3F 

FE 

D051 

LDX 


INPTR 


ED42 

BD 

ED97 

JSR 


FINDCH 

GO TO FIND INPTR L0C IN BUFFER 

ED45 

A7 

00 

STA 

A 

0,X 

STORE INTO NEXT EMPTY BUFFER L0C 

ED47 

B6 

D051 

LDA 

A 

INPTR 


ED4A 

F6 

D052 

LDA 

B 

INPTR+1 


ED4D 

CB 

01 

ADD 

B 

*1 

INCREMENT IN POINTER 

E051 

84 

03 

AND 

A 

M$03 

MASK TO LIMIT TO IK 

ED53 

B7 

D051 

STA 

A 

INPTR 


ED56 

F7 

D052 

STA 

B 

INPTR+1 


ED59 

01 


NOP 




ED5A 

OE 


CLI 



ENABLE INTERRUPTS 

EB5B 

33 


PUL 

B 


RESTORE B AND INDEX 

ED5C 

FE 

D048 

LDX 


SAVEX 


ED5F 

39 


RTS 



RETURN 




♦INTERRUPT 

SERVICE ROUTINE 

ED60 

B6 

8000 

ISS LDA 

A 

ACIACR 

DID SOMETHING ELSE INTERRUPT? 

ED63 

2A 

4B 

BPL 


ERROR 

IF YES 




♦ OK - INTERRUPT CAME 

FROM ACIA 

ED65 

7F 

D050 

CLR 


BUSYFL 

ACIA NO LONGER BUSY. 

ED68 

FE 

D051 

LDX 


INPTR 

IS THE BUFFER EMPTY? 

ED6 B 

BC 

D053 

CPX 


0UTPTR 


ED6E 

26 

06 

BNE 


N0TENT 

NO 

ED70 

86 

15 

LDA 

A 

M$15 

DISABLE ACIA TRANSMITTER INTERRUPTS 

ED72 

B7 

8000 

STA 

A 

ACIACR 


ED75 

3B 


RTI 



RETURN 




♦ BUFFER NOT 

EMPTY, SO 

OUTPUT THE NEXT CHARACTER 

ED76 

FE 

D053 

N0TEMT LDX 


0UTPTR 


ED79 

BD 

ED97 

JSR 


FINDCH 

GO FIND 0UTPTR CHAR IN BUFFER 

ED7C 

A6 

00 

LDA 

A 

0,X 

GET NEXT CHARACTER 

ED7E 

B7 

8001 

STA 

A 

ACIADR 

OUTPUT IT 

ED81 

B6 

D053 

LDA 

A 

0UTPTR 


ED84 

F 6 

D054 

LDA 

B 

OUTPTR+1 


ED87 

CB 

01 

ADD 

B 

Ml 

INCREMENT OUT POINTER 

ED89 

89 

00 

ADC 

A 

NO 


ED8B 

84 

03 

AND 

A 

M$03 

MASK TO LIMIT TO IK 

ED8D 

B7 

D053 

STA 

A 

0UTPTR 


ED90 

F7 

D054 

STA 

B 

0UTPTR+1 


ED93 

7C 

D050 

INC 


BUSYFL 

ACIA IS BUSY AGAIN 

ED96 

3B 


RTI 



RETURN TO PROGRAM 




♦ FINDCH - 

ADD POINTER 

TO BUFFER ADDR 

ED97 

FF 

D055 

FINDCH STX 


TEMP 

SAVE POINTER 

ED9A 

36 


PSH 

A 


AND SAVE CHARACTER 

EB9B 

B 6 

D055 

LDA 

A 

TEMP 


ED9E 

F 6 

D056 

LDA 

B 

TEMP+1 


ED A 1 

CB 

00 

ADD 

B 

MBUFFER 

ADD BUFFER ADDR TO POINTER 

EDA3 

89 

D4 

ADC 

A 

N8UFFER/256 

EDA5 

B7 

D055 

STA 

A 

TEMP 


EDA8 

F7 

D056 

STA 

B 

TEMP+t 

SAVE NEU ADDRESS 

EBAB 

FE 

D055 

LDX 


TEMP 

PUT INTO INDEX REG 

EDAE 

32 


PUL 

A 


RESTORE CHARACTER 

EDAF 

39 


RTS 







* ERROR ROUTINE - INTERRUPT NOT CAUSED BY ACIA 

EDBO 

86 

15 

ERROR LDA 

A 

Nil 5 

DISABLE ACIA INTERRUPTS 

EDB2 

B 7 

8000 

STA 

A 

ACIACR 


EDB5 

FE 

D051 

ERR0R1 LDX 


INPTR 

SEE IF BUFFER IS EMPTY 

EDB8 

BC 

D053 

CPX 


0UTPTR 


EDBB 

27 

IF 

BEQ 


EMPTY 

YES 

EDBD 

FE 

D053 

LDX 


0UTPTR 

NO, SO EMPTY IT BEFORE QUITTING 

EDCO 

BB 

ED97 

JSR 


FINDCH 

FIND 0UTPTR CHAR IN BUFFER 

EDC3 

A6 

00 

LDA 

A 

o,x 

GET NEXT CHARACTER 

EDC5 

3D 

FC0C 

JSR 


0UTEEE 

PRINT IT 

EDC8 

B6 

D053 

LDA 

A 

0UTPTR 


EDCB 

F 6 

D054 

LDA 

B 

OUTPTR+1 


EDCE 

CB 

01 

ADD 

B 

Ml 

INCREMENT OUT POINTER 

EDDO 

89 

00 

ADC 

A 

NO 


EDD2 

84 

03 

AND 

A 

M$03 

MASK TO LIMIT TO IK 

EDD4 

B7 

D053 

STA 

A 

0UTPTR 


EPD7 

F7 

D054 

STA 

B 

OUTPTR+1 


EDDA 

20 

D9 

BRA 


ERROR 1 

GO BACK AND TEST AGAIN 




♦BUFFER EMPTY, SO PRINT ERROR HESSA6E AND QUIT 

EDDC 

CE 

EDE5 

EMPTY LDX 


NERRMS6 


EDDF 

BD 

FC1 2 

JSR 


PDATA 

PRINT ERROR HESSA6E 

EDE2 

7E 

FC03 

JMP 


UARHST 

RETURN TO MONITOR 

EDE5 

OB 


ERRMSG FCB 


$D,$A,0,0 

,0,0 

EDEB 

45 


FCC 


/ERROR - 

IRQ NOT FROM ACIA/ 

EE04 

04 


FCB 


104 



126 Microcomputing, October 1980 



CompuServe’s 

information 

service. 

A world of 

information 

available. 

Right now. 


If you have a personal computer — or a computer 
terminal — CompuServe can bring a world of 
information into your home or small business. 

CompuServe 

CompuServe is a major computer services com- 
pany that has been serving top industrial and 
governmental clients for more than a decade. 
Now we’re also applying our extensive computing 
capacity to the delivery of information services to 
your personal computer. 

The Information Service 

This exciting service is available in more than 250 
cities between 6 p.m. and 5 a.m. weekdays, all 
day weekends and most holidays. Cost? Only 
$5.00 per hour billed in minutes. All you need is a 
300 baud modem, and our complete information 
service is only a local phone call away. 

Welcome to CompuServe’s information service. 

• News. Weather. Sports. Major regional news- 
papers. Plus international news services. 

• Finance. MicroQuote. Updates and historical 
information on stocks, bonds and commodities. 

• Entertainment. Theatre, book, movie and res- 
taurant reviews. Plus opera, symphony, ballet, 
dance, museums, galleries... 

• Electronic Mail. Create, edit, send and receive 
messages from any other CompuServe user... 
nationwide. 


• Home & Educational Reference Service. Any- 
thing you want to know... from encyclopedia in- 
formation to household tips. 

• CompuServe User Information. In case you 
need technical help ... and information on new 
services as they become available. 

• Micro NET. For the computer hobbyist. Software 
Exchange, line printer art gallery, challenging 
games, programming languages, word proces- 
sing, business & educational programs ... and 
much, much more. 

And this is just the beginning. CompuServe is 
continually adding to its list of available services. 
The world of electronic information isn’t coming 
tomorrow. It’s here today. 

CompuServe is Available at 
Radio Shack® Stores 

Your local Radio Shack® Store Sells Com- 
puServe’s information service. There are more 
than 6,000 Radio Shack® Stores and Dealers 
nationwide. Check with the outlet nearest you. 

Radio Shack is a division of Tandy Corporation. 


CompuServe 

Information Service Division 
5000 Arlington Centre Blvd. 

Columbus, Ohio 43220 
(614) 457-8600 


i/ 0 Reader Service index— page 241 


Microcomputing , October 1980 127 




Speed Up Your BASIC Programs 


Simple techniques do make a difference; they can work for you, too. 


1 FOR A = BTOC 

2.8 

2 NEXT 

i.i 

3 NEXT A 

1.5 

4 REM 

0.4 

5 DATA 1 

0.4 

6 RESTORE 

0.4 

7 A = A 

1.4 

8 A = 1 

2.0 

9 each additional digit 

1.1 

10 BB = 1 

2.1 

1 1 each additional character 

0.1 

12 GO TO 3 

0.9 

13 GOSUB. .. RETURN 

1.2 

14 PRINT 

72 

15 PRINTA 

80 

16 PRINT A$ where A$ = “A” 

72 

17 each additional character 

0.3 

18 C = FNA(B) 

3.6 

19 C = A + BorC = A- B 

2.6 

20 each additional + A 

1.1 

21 C = A*BorC = A/B 

3.4 

22 each additional • A 

1.8 

23 IF C THEN 5 where C = A<B is false 

1.2 

24 C = A<B is false 

2.9 

25 IF A<B THEN 5 false 

2.5 

26 : for 2 statements on a line 0.1 saved 

27 space in a line 

0.03 

28 examine 1 entry in variable table 

0.03 

29 A = SQR(B) 

39 

30 A = SIN(B) or A = COS(B) 

22 

31 A =TAN(B) 

39 

32 A = ATN(B) 

27 

33 A = EXP(B) 

22 

34 A = LOG(B) 

16 

35 A = BC 

39 

36 A = B ANDC 

4.0 

37 A = BORC 

4.0 

38 C = NOT A 

2.9 

39 A = USR(B) 

2.3 

40 A = LEN(B$) 

2.6 

41 A = ASC(A$) 

2.4 

42 A$ = LEFT${B$ l 1)or MID or RIGHT 

4.5 

43 A$ = CHR$(B) 

2.8 

44 A$ = STR$(B) 

7.9 

45 A = VAL(B$) 

3.3 

Table 1. Time (in ms) for BASIC to pro- 

cess each statement or fraction 

of a 

statement. Lines 12 and 13 reflect mini- 

mum times, since the times depend on 

how many numbers are examined. SIN 

functions, for example, may vary with 

the value of the argument. Line 26 shows 

the time saved for two lines of code. For 

all entries, the times may depend on how 

the statement is used. 



Edward H. Carlson 
3872 Raleigh Dr. 
Okemos, Ml 48864 


T he secrets of speeding up BASIC are 
simple once you analyze how it goes 
about its work. Best of all, you may need to 
change only a small portion of the code to 
make it run faster. 

This article’s examples are for the 
Microsoft BASIC-1 N-ROM, Version 1.0, Rev. 
3.2, used on my OSI C2-4P and other Ohio 
Scientific computers. A similar Microsoft 
BASIC is used on the PET and the TRS-80. In 
fact, most BASIC interpreters should be- 
have in a similar way. This article describes 
procedures you can use to check out your 
own machine. 

Typically, a program spends much of its 
time in a small fraction of its total code. 
This is especially true when nested loops 
are present. The running time of the pro- 
gram is sensitive to the efficiency of the in- 
nermost loop. 

Speed and Clarity 

The BASIC interpreter decodes and ex- 
ecutes one line of source code at a time, 
perhaps even branching out of the line 
before reaching its end. Within a line, the in- 
terpreter reads and decodes each character 
in turn. The fewer lines and characters the 


program has, the faster the interpreter can 
work. 

Before you go on a binge condensing 
your code, remember that a good program 
has other essential characteristics besides 
speed. One of the most important is clarity. 
This is effected in several ways that are the 
opposite of condensation: for example, 
long, descriptive variable names, spaces 
between words, many Remark statements 
and the use of subroutines to emphasize 
the logical structure of the program. 

So if your program has nested loops, or 
otherwise spends most of its time in a small 
portion of the code, then only that code 
need be condensed. The rest can be written 
with clarity as the prime consideration (if 
space in memory is not also a problem). 

Besides condensing your code to obtain 
speed, you must also realize that BASIC 
uses and stores its numbers in binary form 
and so needs to decode the decimal form 
that occurs in the source code. It must do 
this each time it reinterprets a line; it never 
remembers that it has decoded the number 
before. Assign and use names for any such 
decimal constants, and your programs will 
be greatly speeded up. 

For example, Listing 1 shows three ver- 
sions of a program to fill my computer’s 
screen with the letter A. Version a runs in 25 
seconds, but version b, which avoids 
repeated decoding of the decimal numbers, 
runs in ten seconds. Version c is the fastest, 
running in eight seconds. 

It is important to note that the FOR state- 
ment is only interpreted once during the 
loop — at the beginning- while the NEXT 
statement is executed each time the in- 
terior of the loop is traversed to test for 
completion of the loop. So optimization of 
the FOR statement is not valuable in 
speeding up your program. 

Other “slowpokes” in BASIC include the 
statements that reassign the flow of execu- 


128 Microcomputing, October 1980 


10 

FOR 1=0 TO 2047 


20 

POKE 53248+1 , 65 


30 

NEXT 



Listing la. 

5 0=53248 
7 R=65 

10 FOR 1=0 TO 2047 
20 POKE Q+I - R 
38 NEXT 



Listing 1b. 

5 

0=53248 :B=65 


10 

F ORR=QT 00+2047 : POKER . B : NEXT 


Listing 1c. 



tion, such as GO TO, GOSUB and 
ON... GOTO. They can be speeded up, 
however. They start searching for their 
target line number at the lowest-numbered 
line in the source program and spend 0.85 
milliseconds per line. This can add up to a 
large amount of time in a long program. 

Instead of starting a program with the 
one-time-only housekeeping statements, 
continuing with the central structure and 
ending with the subroutines, I start my pro- 
grams with a jump to high line numbers, 
where I put the initializing and housekeep- 
ing statements. 

The main body of the program is written 
next, starting at lower line numbers but still 
high enough to leave plenty of room at the 
beginning for all the subroutines (or at least 
the ones called from time-sensitive inner 
loops). Another advantage is that the 
decimal addresses in the GOSUB 
statements will have fewer digits and will be 
decoded quicker. 

Searching the Variable Table 

When RUN is hit and execution of the pro- 
gram starts, there is no variable table. It is 
created by the interpreter as it scans lines. 
Each time a variable name is found, the vari- 
able table is searched. If the variable name 
is not already in the table, it is added at the 


end of the table. 

BASIC always searches the table in order 
from the first-encountered to the last-en- 
countered variables. Your most-used vari- 
ables should be placed at the beginning of 
the table by executing a statement early in 
the program that defines the desired vari- 
ables, such as X = 0: Y = 0: Z = 0. 


The variable table search is efficient 
(probably because BASIC knows that each 
entry is exactly six bytes long). The time 
spent is only 0.03 milliseconds per entry ex- 
amined. This is about the same time spent 
ignoring a space in decoding a line of 
source code. Paying attention to the vari- 
able table will probably not speed up your 


PRINTERS & CRT’S From Orange micro 




MOW' 


|M*' 




IMPACT PRINTER 


s 649. 


00 


(LIST $699.00) 

“The BASE 2 outperforms every printer in 
its price range. Do a comparison and see for 
yourself . . .” 

★ GRAPHICS ★ TRACTORS / FRICTION FEED 

• 2K Input Buffer • RS-232 Serial, Centronics® Parallel, 
IEEE-488, 20 ma • TRS-80 Cable option • 60 LPM - 100 
CPS • Fast form feed • User programmable character 
set • 64, 72, 80, 96, 120, 132 Columns/ line • Expanded 
characters • 9.5" wide paper • Automatic skip-over- 
perforation • Horizontal & Vertical tabs • Programmable 
vertical line spacing • Intel 8085 Microprocessor — over 
40 software commands • Self test • 15 Baud rates to 
9600 Baud • Optional foreign character sets 

Interfaces to TRS-QO, Apple , Atari , PET , Northstar, and most 
other computers. 


TELEVIDEO CRT’Sl 

PRICES SLASHED! 


TVI 91 2C 
TVI 920C 


Please Call Toll Free 
Prices are too low to 
advertise 


PRINTERS 

ANACOM 150 150 CPS, wide carriage, 9 x 9 dot (List $1350) $ Call 

CENTRONICS 737 Text processing dot matrix (Radio Shack LP IV) $ Call 

CENTRONICS 730 (Radio Shack Line Printer II) 639 

COMPRINT 912 225 CPS Electrostatic (List $660) 529 

OKIDATA MICROLINE 80 (List) $800) 599 

EPSON Dot graphics, serial, parallel $ Call 

MALIBU Dot graphics, 132 Col, Letter quality $ Call 

PAPER TIGER IDS 440 w/graphics & 2K buffer (List $1094) 939 

QUME 5/45 Typewriter quality (List $2905) 2499 

INTERFACE EQUIPMENT 

APPLE II — BASE 2 parallel graphics interface board 160 

SSM AIO BOARD Serial/Parallel interface board (List $225) 199 

TRS*80 CABLES expansion interface or direct $Call 


TOLL FREE ( 800 ) 854-8275 «%- 

CA,AL, HI ( 714 ) 630-3322 


Call for FREE CATALOG 


Phone orders WELCOME. Same day 
shipment for VISA, MASTER 
CHARGE, and AMERICAN EX- 
PRESS. Personal checks require 2 
weeks to clear. Add 3% for ship- 
ping and handling. California resi- 
dents add 6%. Manufacturer’s 
warranty included. Prices subject to 
revision. 


Oronge 

micro 


3148 E. La Palma. Suite E 
Anaheim, CA 92806 




programs much. 

Subroutines 

It is more effective to place several 
statements on one line by separating them 
with a colon (in OSI BASIC). A time savings 
of 0.1 milliseconds is achieved each time 
such a colon is encountered. A space sav- 
ings of three bytes is also achieved.. 

Using colons, short “subroutines” can be 
written directly after an IF statement on the 
same line, rather than using the IF. . .THEN 
with a GOSUB to jump to a subroutine. This 
saves time by omitting the search-for line 
number and also gives a tight execution of 
the “subroutine.” That portion of the state- 
ment after THEN is not interpreted if the IF 
condition was “false.” 

Listing 2 shows two versions of the pro- 
gram. Version a uses a proper subroutine, 
while version b differs only in line 20, which 


5 fi 

=R: RETURN 

10 

FOR 3>0TO10000 

20 

IF R=1 THEN GOSUB 5 

30 

NEXT 

40 

END 

100 

R=1 

110 

GOTO 10 


Listing 2a. 


20 IFR=1THENR=R 


Listing 2b. 


has a “subroutine” on the same line with an 
IF. (Both of these programs are executed 
with “RUN100” to jump to the housekeeping 
lines. Version b runs 1 2 seconds faster than 


version a, or 1 .2 milliseconds saved for each 
GOSUB. . .RETURN avoided.) 

Summary 

We have discussed the principles and the 
most important applications for speeding 
up BASIC. You can see from Listing 2 how 
BASIC can be tested. A loop 10,000 turns 
long is used to execute a statement. Then 
the statement is replaced by one differing in 
some feature. 

By subtracting the running times, you 
can find the difference in time to execute 
the given feature of code. Table 1 gives the 
running time for several BASIC statements 
and portions of statements for the C2-4P 
computer. 

Listings 1 and 2 were made on a Com- 
print 912 printer connected to the 6522 VIA 
parallel port on the CPU board of the C2-4P 
computer. ■ 


Ohio Scientific! 

HARDWARE: C1P VIDEO-Cives true 32 or 64 
chr/line with guard bands. This is not a make-shift mod. It 
makes your video every bit as good as the 4P's plus you 
have switch selectable 1, 2 and 3 MHz CPU clock as well 
as 300. 600 and 1200 baud for cassette and serial 
port — all crystal controlled Send for our $1 00 catalog 
for more details Complete plans— $18 95 Kit— $39 95 
or send your 600 board to: Rick Lotoczky, 

3281 Countryside Cir. 

Pontiac Twp, Ml 48057 
and he will install the video mod for $79 95. 

Other mods available: Add sound; RS-232 port, 
cassette motor control, cassette interface plans (300. 600 
& 1200 baud) 

SOFTWARE: (With documentation) For Cl. C2, 4P & 8P 
Chess 19; Backgammon; Excellent card games, Arcade 
type games; Utility Programs, Mini Word Processor, 
Memory Maps, Editing Cursor etc. 

Catalog with free program (hard copy) and Memory 
Map for BASIC in ROM Models $1 00 

3336 AVONDALE CT., 
WINDSOR, ONT. 
CANADA N9E 1X6 
(519)969-2500 


rpogressive 
| pmputingQ 


Advanced Scientific Software for orv 

I Kb-oU 

APPLE II and NORTH STAR 


MATH Library 

22 quality programs (req. 16K) including root of 
equations, integration, differentiation, simulta- 
neous equations, matrix operations, interpola- 
tions, regression analysis (linear, polynomial, 
multiple), ordinary differential equations, partial 
differential equations, statistics and plotting; 
with detailed user manual. 


TRS-80 disk, or Level II tape $29.95 

Apple II disk $34.95 

North Star disk (single density) $34.95 


ODE Master 

Solves singte and simultaneous ordinary differ- 
ential equations; can handle even ‘stiff’ prob- 
lems; error control and formatted output to CRT 
or printer; with user manual. 


TRS-80 Level II, 16K tape $14.95 

Apple II disk $19.95 

^213 North Star disk (single density) $19.95 

H Add S2 lor shipping (foreign orders add $5): N.J. 
x ■ I resident add 5 U <, sales tax Send check or money 

°'d* *r 

L 509 King George Rd., Cherry Hill, N.J. 08034 (609) 482-0191 - 


discount 

COMPUTER PRODUCTS 

Master Charge & Visa Accepted 
(Please give card no and expiration datel 


APPLE 


TEXAS IN STRUM ENTS 


Apple II 16K 

*999. Model 810 


Micro Music Board 

Basic Printer 

1649. 

for Apple 

161 CENTRONICS 


OHIO SCIENTIFIC 

730-1 

750. 

Superboard II 

275. 779-2 Tractor 


C1P 8K 

359. Feed Printer 

1049 

C4P 8K 

fJJ- Epson Tx-80 Tractor Printer 

C4P MF 
C8P 
C8P DF 
C2 OEM 

tor w/Graftrax Option. 

Call for Price 

COMPRINT COMPUTER 

PRINTER INTERNATIONAL 

NOVATION INC. 

Cat Modem 

Comprint 912 S 
179. .... 

591 

HAZELTINE 


OKI-DATA 

1410 

798 

Micro-80 Printer 

695. 1420 

898 


1500 

998. 

PRICES SUBJECT TO CHANGE 


MAIL & PHONE ORDERS ONLY! 
SHIPPING EXTRA 

199 


DELIVERY FROM STOCK TO 6 WEEKS 

P.O. BOX 308 

Thiells. N Y. 10984 (914)429-9631 


16 K UPGRADE 

$66 95 

TRS80, APPLE II, 

AND SORCERER 

HIGH QUALITY PRIME 16K RAMS FOR MEMORY 
UPGRADE. THE KIT INCLUDES, THE RAMS, 
SHUNTS AND INSTRUCTIONS TO ALLOW EASY 
UPGRADE IN MINUTES. ALL PARTS CARRY 12 
MONTH WARRANTY. 

TO ORDER, SPECIFY KIT AND ENCLOSE CHECK 
OR MONEY ORDER. ADD $2.00 POST AND 
PACKING; TEXAS RESIDENTS ADD 5% SALES 
TAX. 

IAN ELECTRONICS 
P.O. BOX 14079 " 2 ° 9 

AUSTIN, TEXAS 78761 


ATARI OWNERS 



THE 

MICRO CLINIC 


Parallel Printer Interface 
for the ATARI 400 / 800 

Connects to controller jacks 3&4 
works with BASIC / DOS / ASSEMBLER 

Three printer connectors available: 

ATARI 400 / 800 

TRENDCOM 100 / 200 A4P-1 A8P-1 

CENTRONICS 730 / 737 A4P-2 A8P-2 

CENTRONICS 36 PIN* A4P-3 A8P-3 

•Fits all other parallel Ce ‘■ronics plus Anadex, 
Base 2, Epson, Comprint and Microtek. 

Order by part number, MC / VISA accepted. 


$ 69* 95 

W ♦CA sal 

v* 207 

T a ^^Vmcrotroni 

1 1 95 N. Golden Si 
Turlock, CA 9538< 




sales add 6% tax 
207 

IICS, inc.® 

State 
95380 (K) 

(909) 667-9888 / 634-8888 


SYSTEM DIAGNOSTICS FOR THE MODEL I TRS-80* 


THE FLOPPY DOCTOR 2.2 

• Complete write/read testing 
for all 35 or 40 track drives 

• Tests all controller functions 
and status bits including error 
reporting 

• Tests drive motor speed and 
allows adjustment while 
running 

• Complete error logging and 
summary for 1 to 4 drives 


MEMORY DIAGNOSTIC 2.1 

• Write/Read section tests each 
address 260 times per com- 
plete pass 

• Checks for correct refresh 
operation and true address 
uniqueness 

• "Ml Worm” test executes 
machine code from each 
address, verifies execution 

• Complete error analysis is 
performed when errors occur 


Both diagnostics are written in Z-60 machine code and can be 
run continuously to verify long-term system reliability. Com- 
plete instruction manual includes hints to troubleshooting. 
Supplied on a diskette for a minimum of 16K single disk 
system. A must for all serious disk users, including disk 
retailers and service centers, -tm Tandy corp. 


PRICE: $19.95 

CA residents add 6% Sales Tax. Add $1 .00 P/H 

THE MICRO CLINIC* 17375 BrpokhufSt » Suite 114 * Founta.n Valley, CA 92708 




130 Microcomputing, October 1980 





LAST MONTH FOR SWEEPSTAKES • OVER $1700. 2a |N PRIZES 



K SEND FREE CATALOG □ 


i/ 0 Reader Service index— page 241 


Microcomputing, October 1980 131 


ENTER NOW! • GRAND PRIZE 16K LII TRS-80 



Whoa, Apple 


These two machine-language programs tighten the reins on galloping video displays. 


Terry Edward Phillips 
6011-4 Majors Lane 
Columbia, MD 21045 


A pple II is one of the fastest kids on the 
block. When you list, DSP or trace a 
BASIC program, the screen fills at an im- 
pressive speed. 

But this can sometimes be annoying and 
frustrating. If you are trying to seriously 
follow the information that’s being output, 
not even a speed-reading course would 
help. 

Fortunately, two programs can easily 
give you manual control over your output 
rate. Both work well with Apple Integer, Ap- 
plesoft (cassette or firmware) and the Apple 
Monitor. 

Introduction 

Anything your Apple II displays on its 
screen resides in a predetermined reserved 
section of your Apple’s memory. Normally, 
RAM locations 0400-07FF are used for 
storage. This screen memory area, called 
the primary page in the Apple manuals, is 
continuously queried by hardware in your 
Apple, which then generates the video 
signals for your monitor. 

Interestingly, this process is completely 
unknown to the microprocessor. The CPU 
has no idea that someone else is using its 
memory. The system knows only that to 
output video data, it must deposit the data 
into this reserved area. 

A machine-language subroutine located 
in ROM at location FDFO places alpha- 
numeric characters in the screen memory 
area one at a time. This and subsequently- 
called subroutines are responsible for plac- 
ing the byte in the accumulator (passed by 


the calling routine) into the screen memory, 
adjusting the line width, line feeds and 
scrolling and doing other housekeeping 
chores. 

The BASIC interpreter and Apple monitor 
routines call this subroutine every time they 
want to communicate with you via the 
screen. For example, if your BASIC inter- 
preter is executing a PRINT“APPLE” state- 
ment, the interpreter will place the ASCII 
code for the letter A in the accumulator and 
go to the subroutine at FDFO. When it 
returns from this subroutine (the letter A is 
now on the screen), the code for the letter P 
is then placed in the accumulator, and so 
forth. 

The BASIC interpreter and Apple monitor 


do not go directly to the location FDFO to 
output a character. Rather, they look at 
RAM locations 0036, 0037 to find their out- 
put subroutine. When the reset key is 
pushed, the Apple monitor will, among 
other tasks, place the address of the normal 
video output routine, FDFO, into locations 
0036, 0037. The calling routine then finds its 
output subroutine by executing an indirect 
jump to location 0036. 

This means it jumps, not to location 0036, 
but to the 16-bit address contained in loca- 
tions 0036, 0037. Thus, the calling routine, 
in a roundabout way, finds the normal video 
output routine. 

At first, this technique appears to be un- 
necessarily complex. Why not have the in- 


Address 

Code 


Label 

Mnemonic 

Comment 

2 DC 

A9 

E5 



LDA#E5 

Place Delay Subroutine 

2DE 

85 

36 



STA 36 

Address In locations 

2E0 

A9 

02 



LDA#02 

0036, 0037 

2E2 

85 

37 



STA 37 


2E4 

60 




RTS 


2E5 

08 



ENTRY 

PHP 

Save relevant registers 

2E6 

48 




PRA 

2E7 

18 



FGCLR 

CLC 

Clear Flag 

2E8 

AD 

00 

CO 

RKYBD 

LDA C000 

Read Keyboard 

2 EE 

10 

OC 



BPL FLGCK 

Branch to Check Flag If 
no key Is depressed 

2 ED 

2C 

10 

CO 


BIT C010 

Clear Keyboard Strobe 

2F0 

49 

91 



EOR#9 1 

Mask for control keys 

2F2 

F0 

F3 



BEQ FGCLR 

Branch to Clear Flag If 
CTRL Q was depressed 

2F4 

29 

FD 



AND#FD 

Mask for CTRL S key 

2F6 

DO 

01 



BNE FLGCK 

Branch to Check Flag If 
not CTRL S 

2F8 

38 




SEC 

Set Flag if CTRL S Is hit 

2F9 

B0 

68 

ED 


FLOCK 

BCS RKYBD 

Branch to Read Keyboard 
If Flag Is Set 

2FB 




PLA 

Restore relevant registers 

2FC 

28 




PLP 

2FD 

4C 

F0 

FD 

EXIT 

JMP FDFO 

Jump to Normal Video 
Output Subroutine 


Program 1. Halts video output when the CTRL S key is depressed. Output is resumed 
when the CTRL Q key is hit. 


132 Microcomputing, October 1980 


terpreter and monitor go directly to FDFO? 
But this sleight of hand is useful. With this 
indirect method, you can route output data 
to any device, such as a printer, paper 
punch or TTY, by placing the vector address 
of the output routine designed for that par- 
ticular device in locations 0036, 0037. 

This technique of vectoring the output 
offers a solution to the problem at hand. 
You can change the vector address in loca- 
tions 0036, 0037 from FDFO to the address 
of a short routine whose only purpose is to 
provide some sort of delaying tactic. After 
the delay condition is satisfied, the 
character in the accumulator is sent to the 
normal video output subroutine located at 
FDFO. The net effect is to reduce the speed 
of video output. 

Two Patches 

Two short machine-language patches 
are designed to provide a delay and give you 
manual control over the speed of video out- 
put. 

The first program checks the keyboard 
when a character is to be output to see if the 
CTRL S key was depressed. If not, the nor- 
mal output is continued. If the key was 
depressed, the routine waits in a con- 
tinuous loop until you depress the CTRL Q 
key. Video output, therefore, can be 
stopped and started by alternately striking 
the CTRL S and CTRL Q keys respectively. 

The second program is a bit different. It 
uses game paddle 0 to determine the output 
speed. When a character is to be output, 
this program reads the value of paddle 0 via 
a subroutine in ROM. This becomes the ini- 


tial value of a two-stage timing loop. When 
the counters in the loop are decremented to 
zero, the loop is exited and the character is 
passed to the normal output routine. This 
variable timing loop allows you to vary the 
output speed from approximately three 
characters per second to nearly full speed, 
just by varying the position of game paddle 
0 . 

Memory Location 

Either routine, as presented, is assem- 
bled at the top of page two of memory 
(0200-02 FF). This area of memory is nor- 
mally used by the Apple monitor as a 
keyboard buffer. All your keystrokes be- 
tween successive returns are stored here. 
As long as you don’t type more than about 
200 keys before hitting return, page two of 
memory can be shared amicably between 
the two functions. I decided to place the 
routines there to avoid possible conflicts 
with other software packages, but if its 
location is inconvenient or undesirable, you 
can relocate the programs elsewhere with 
only minor changes. 

The selected routine can initially be 
entered into memory with the ROM-based 
assembler described in the Apple manual. 
Subsequent loads can be done via the tape 
cassette, although they are short enough 
that manual loading might be faster. 

The selected routine is then initialized by 
executing a call to 02DC in the monitor 
mode or a CALL 732 in BASIC. You resume 
normal video output by executing a ROM- 
based subroutine with a call to FE93 or a 
CALL - 365 in BASIC or when reset is hit. ■ 


Address 

Code 


Label 

Mnemonic 

Comment 

2 DC 

A9 

E5 



LDA#E5 

Place Delay Subroutine 

2DE 

85 

36 



STA 36 

Address In locations 

2E0 

A9 

02 



LDA#02 

0036, 0037 

2E2 

85 

37 



STA 37 


2E4 

60 




RTS 


2E5 

48 



ENTRY 

PHA 

Save registers 

2E6 

98 




TYA 


2E7 

48 




PHA 


2E8 

8A 




TXA 


2E9 

48 




PHA 


2EA 

A2 

00 



LDX#00 

Set Index for Paddle 0 

2 EC 

20 

IE 

FB 


JSR PB1E 

Subroutine to read Paddle 

2EP 

C8 




INY 

Adjust value of Paddle 

2P0 

98 




TYA 

Copy value Into A 

2F1 

AA 



RSTRX 

TAX 

Restore value Into X 

2F2 

CA 



INLOP 

DEX 

Inner delay loop 

2F3 

DO 

PD 



BNE INLOP 


2F5 

88 




DEY 

Outer loop decrement 

2F6 

DO 

F9 



BNE RSTRX 

Restore Inner loop If 







outer loop Is Incomplete 

2F8 

68 




PLA 

Restore registers 

2F9 

AA 




TAX 


2 PA 

68 




PLA 


2PB 

A8 




TAY 


2 PC 

68 




PLA 


2FD 

4C 

P0 

FD 

EXIT 

JMP FDFO 

Jump to Normal Video 


Output Subroutine 


Program 2. Utilizes the game paddle 0 to vary the video output speed from approximate- 
ly three characters per second to full speed. 


•£> DISCOUNT 

COMPUTER PRODUCTS 

Master Charge & Visa Accepted 
(Please give card no and expiration date) 


APPLE 

Apple II 16K 
Micro Music Board 
for Apple 

OHIO SCIENTIFIC 

Superboard II 
C1P8K 
C4P8K 
C4P MF 
C8P 
C8P DF 
C2 OEM 

NOVATION INC. 

Cat Modem 

OKI- DATA 

Micro-80 Printer 


S999. 

168 . 

275. 

359. 

625. 


TEXAS INSTRUMENTS 

Model 810 
Basic Printer 

CENTRONICS 

730-1 

779-2 Tractor 
Feed Printer 
Epson Tx-80 Tractor Printer 


1649. 


750. 

1049. 


WJ- w/Graftrax Option. 


795. 

2449. 

2499. 

179. 

695. 


Call for Price 
COMPRINT COMPUTER 
PRINTER INTERNATIONAL 

Comprint 912 S 598. 

HAZELTINE 

1410 798. 

1420 898. 

1500 998. 


PRICES SUBJECT TO CHANGE 


MAIL & PHONE ORDERS ONLY' 

SHIPPING EXTRA 

DELIVERY FROM STOCK TO 6 WEEKS 

P.0. BOX 308 

Thiells. N Y. 10984 (914) 429-9631 


MEMORY 1C BONANZA 


INTEL 5V ONLY 16K DYNAMIC RAM: 150ns, 
ceramic, low power (llmw stby, ISOmwoper) version of 
popular 16Kx1 4116. TTL compatible inputs, tri-state 
outputs. Equivalent to Motorola 4516, National 5295 etc. 
OEM list price in quantities of 100d is $17, our price, Intel 
D2118-7s at $10ea. 

INTERSIL 4K DYNAMIC RAM: Equivalent to 
Mostek 4096, 300ns, 4Kx1, ceramic & gold, TTL 
compatible inputs, tri-state outputs, low power (24mw 
stby, 380mw oper), priced at less than 'A the usual pobby 
price, sold in sleeves of 24, $30 per sleeve, that's Intersil 
7005-1 2s at $1.25 ea. 


INTEL 2716 EPROMS - 5V ONLY: Ceramic. 450ns, 
the industry standard 2Kx8 EPROM. Sold by others from 
$27to $59, quantity limited $20ea. 

FULL SPEC SHEETS: Free with order or $1.00 per set 
of 3 for evaluation. 


TERMS: Prices include insured UPS 48 states. UPS 
COD add $2. MC/VISA add 4%. Prime parts, new in 
original sleeves, guaranteed to mfr’s specs. $20 
minimum order. N.J. add sales tax. Immediate shipment 
or immediate refund. 

ELECTRAVALUE INDUSTRIAL 

PO. BOX 157-K (•', 


MORRIS PLAINS. NJ 07950 


Phone orders 
are welcome. 

201/267-1117 


SURPLUS INVENTORY 


$77 



22 MHz 
BANDWIDTH 

SOLID STATE MONITORS: Sylvania 12 B8W CRT 22MH z 
video bandwidth, 800 line resolution! ASL Model C12ACB OEM 
tabletop style without case. P4 phosphor Inputs = separate video, horiz. 
& vert pos. sync pulses at nominal TTL/CMOS levels Any sweep rate. 
10-20 KHz. 115 VAC. Simple TRS-80 hookup, add 2 jumpers. With full 
maint. mainual incl. timing, schematics. TRS-80 hookup etc Slightly 
used and like new. checked. $88. Used, checked, no burns $77 

FLOPPY POWER SUPPLIES (6 OUTPUTS): North »3676, 
brand new in orig. loam boxes. 5V/3A, 24V/1.2A, 16V/2 6A (all 
adjustable, w/OV prot. & curr limiting); 12V/0.1A. -24V/0 3A (both w/OV 
proL); -12V/0. 1A (adj.). Fully regulated, linear, partially end., w/schts & 
assy dwgs. 3.5X5.5X14". 115VAC. Will run 1 typical 8" floppy or drop 
the 1 6V to 1 2 and run 2 or 3 minifloppies $44 

S100 CORE SALE: Brand new, tested Ampex core. See article "ITS 
TIME FOR CORE" (9779 Kilobaud p. 34) which describes an easily built 
interface between this core and an S-100 machine But ignore the prices 
in the article' Sale priced, including large documentation pkg Non- 
volatile i6K-byte boards $199. 

Add $4 for schematics of core. 

OTHER SURPLUS BARGAINS: LETTER QUALITY ASCII KSR 
TERMINALS, Perkin Elmer Carousel 20ma $1600. RS-232 $1800, FOB. 
PORTACOM portable terminals w/built-in coupler, 110 baud, impact, 
technician special. AS-IS $250. checked $450, FOB. 

WRITE OR CALL FOR FULL SPEC SHEETS ON SPECIFIC ITEMS. 

TERMS: UPS included 48 states except FOB items UPS COD add 
$2 00 VISA & MC add 4* NJ add sales tax Everything guaranteed 
working to specs immediate snipment or immediate refund. Phone 
orders and questions are welcome 

ELECTRAVALUE INDUSTRIAL 

PO BOX 157-K C'S) Phone orders 

MORRIS PLAINS, NJ 07950 CyV^ are welcome. 

201/267-1117 


v* Reader Service index— page 241 


Microcomputing, October 1980 133 









<75 

O 


</) 


O 


</> 

O 


This 96-page workbook introduces the fundamentals of OSI 
BASIC and explains its characteristics, limitations and usefull 
features. It also discusses control and logic and contains 
many sample programs and exercises. Just $5.95. 

See your dealer or write: 


TIS 

P.O. Box 921, Dept. KB 
Los Alamos, NM 87544 


Add $2.00 ($5 foreign orders) 
shipping and handling 



O 


(/> 


o 

</> 


o 

0> 


OSI • OSI • OSI • OSI 


OSI • OSI • OSI • OSI • OSI • iso 



New 248-page book includes all the former TIS workbooks 
except “PET Graphics.” Provides information for both ROMs and 
a comprehensive index. Only $14.95. 


Also from TIS 

WB-3 PET Graphics $4.95 

Software products on cassette or floppy disk with complete instruction 
manual. Each $24.95 (cassette), $29.95 (diskette). 

SW-1 MAIL B mailing list system 
SW-2 CHECKBOOK record 

SW-3 ACCOUNTS keep track of who owes you how much 

SW-4 MEDIT create and maintain date files 

SW-5 CALENDAR appointments, meetings at-a-glance 

TIS 

P.O. Box 921, Dept. KB Add $2 ($5 foreign orders) 

Los Alamos, NM 87544 ^ 95 shipping and handling 

PET and CBM are trademarks of Commodore Business Machines 


EPROM PROGRAMMERS 



EP-2A SERIES 


* PROGRAMS 2708 and 2716 
EPROMS 

* Price $59.95 Assembled and 
Tested 

* Kit price $49.95 

* Includes Connector 



EP-2A-78 SERIES 

* PROGRAMS 2708, 2716, 
2758, TMS 2716 and TMS 
2532 EPROMS 

* TEXTOOL ZERO FORCE 
SOCKET 

* Price $79.95 Assembled and 
Tested 

* Includes Connector 


Software available for the Rockwell AIM-65, MOS Technology 
KIM-1, Synertek SYM-1, Motorola D2, RCA VIP and many other 
single board computers that use the 6502, 6800, 8080/85, Z-80, 1802, 
F-8 and 2650 CPU's. Stock. Specify one set of software. 

Optimal Technology Inc. ^ 29 

Blue Wood 127 
Earlysville, VA 22936 U.S.A. 

Phone (804) 973-5482 


/T 


APPLE 11 PLUS WITH 48K RAM 
TEXAS INSTRUMENT 99/4 COMPUTER 
TI8I0 PRINTER 
CENTRONIC PRINTERS: 

730-1 PARALLEL PRINTER 
737-1 PARALLEL INTERFACE 
SAVE ON ALL OTHER MODELS 
SPINWRITERS FROM NEC 
55 10 R/O SERIAL INTERFACE 
5520 KSR SERIAL WITH KEYBOARD 
5530 PARALLEL INTERFACE 
PAPER TIGER 440 
440G 

BASE-2 PRINTERS 
800M.S.T. 

COMPRINT 912 APPLE, TRS-80, PET 
912 SERIAL 
SYM-I W/MANUALS 
COMMODORE BUSINESS MACHINES: 

CBM 8016 
8032 

PET 2001 -8K COMPUTER 
PET2001-16K 
PET2001-32K 

PET 2022 TRAC. FEED PRINTER 
PET 2023 FRIC. FEED PRINTER 
PET 2040 DUAL FLOPPY DISK DRIVE 
PET 8050 
ATARI 800 

INTERTEC SUPERBRAIN (32K) 

NORTH STAR COMPUTERS 
H RZ-2-32K-D- ASM 
H RZ-2-32K-Q- ASM 
DISPLAY TERMINALS: 

INTERTUBE II 
HAZELTINE 1410 
HAZELT1NE 1420 
SAVE ON COMPLETE HAZELTINE LINE 
IMMEDIATE DELIVERY FROM STOCK PRICES SUBJECT TO CHANGE 
MULTI-BUSINESS COMPUTER SYSTEMS 

28 MARLBOROUGH STREET ^ 81 
PORTLAND, CONN. 06480 


$1190. 
$ 989. 
$1590. 

$ 659. 
$ 879. 


$2490. 
$2795. 
$2690. 
$ 929. 
$ 990. 

$ 649. 
$ 559. 
$ 599. 
$ 229. 

$1329. 
$1595. 
$ 695. 
$ 895. 
$1090. 
$ 749. 
$ 679. 
$1090. 
$1499. 
$ 849. 
$2595. 

$2275. 

$2675. 

$ 775. 
$ 775. 
$ 899. 





M/F 9-6 SAT 9-3 (203) 342-2747 

IH 


TWK: 710-428-6345 
MBCSYS 

WS4 i J 

""I 


134 Microcomputing, October 1980 


SIRIUS 80+ 

Perfect Add-Ons for Your 
Computer System! 


PRIAM 

Hard Disks 
Now Available 
from SIRIUS 
SYSTEMS! 


PRIAM's high-performance, low-cost Winchester disc drives speed up throughput and expand data storage 
from 20 megabytes to 154 megabytes. And a single controller can be used to operate 14-inch-disc drives with 
capacities of 33, 66, or 154 megabytes or floppy-disc-size drives holding 20 and 34 megabytes. So it’s easy to 
move up in capacity, or reduce package size, without changing important system elements or performance. 



I Fast, Linear Voice Coil Positioning 
I 10 ms track-to-track positioning 
I Fully servoed head positioning 
I Dedicated servo tracks 


I DC Power required only! 
I Simple, parallel Interlace 
I Optional SMD Interface 


I 50 ms Average Positioning time 
I 90 ms Maximum Positioning Time 
I 6.4 ms Average Latency 


Model/Disc Size 


DISKOS 3350 
DISKOS 6650 
DISKOS 15450 (14" 
DISKOS 2050 
DISKOS 3450 
DISKOS 570 
DISKOS 1070 


THE PRIAM LINEUP 

Size 

7" x 17" x 20" 

7" x 17” x 20" 

7" x 17" x 20" 
4.62” x 8.55” x 14.25" 
4.62" x 8.55" x 14.25” 
floppy-size 
floppy-size 


Weight Price 

33 lbs. $2995 

33 lbs. $3749 

33 lbs. $4695 

20 lbs. $2995 

20 IbS. $3745 

(low) (low) 

(low) (low) 


Capacity 

33Mbytes 
66 Mbytes 
154 Mbytes 
20 Mbytes 
34 Mbytes 
5.3 Mbytes 
10.6 Mbytes 

All PRIAM DISKOS Drives have a Transfer Rate of 1 .03 Mbytes/Sec. 

Optional SMD interface available for $150. 

SIRIUS SYTEMS offer cases and enclosures for all PRIAM Hard Disk Drives. All 14" Winchester 
Drives will mount in our 14" Standard Case. The 8" Winchesters have two alternatives: a single 
drive case and a dual drive case. All SIRIUS SYSTEMS Winchester drive cases include Power 
Supply, internal cabling, switches, fan, extra AC outlet (not switched, but fused) and possess very 
adequate ventilation. Drive addressing is done on the rear of the Case and not on the drive iteself 
to provide ease of use during operation. All WINCHESTER DRIVE Cases are Warranted for a full 
year and come in our standard blue-black color scheme. Consult us for current availability and 
pricing. 

Remex rfd 4000/4001 
8" Floppy Disc Drives 
Double sided . . . 

Double density!! 


*549 


95 



RFO 4001 ,$569.95 

Offers quality and features found in drives costing much 
more! ■ Single or Double Density ■ Double-Sided Drive ■ Door Lock INCLUDED 
■ Write-Protect INCLUDED ■ 180 Day Warranty ■ Compatible with Shugart 
850/851 ■ Low Power Operation ensures LONGER LIFE!! ■ Model RFD 4001 offers 
Data and Sector Separator 
RFD 4000/4001 Technical Manual 6.95 

Connector Set #3 (AC, DC, Card Edge) . 1 0.95 RFD 4000C/B Cabinet (for use with 
Connector Set #4 (AC and DC) 2.95 Power Modules) 29.95 

Remex lOOOB . . . If you've been looking — ~ 

for a less expensive floppy disc drive, 
but not wanting to sacrifice quality — 
this Is It! 


$41995 


You get both in the Remex 1000B! For only $419.95 look 
at what you get: ■ 8" Floppy Drive ■ Single or Double Density 
■ Hard or Soft Sectoring* Media Protection Feature ■ Single Density 
Data Separator ■ 180 Day Factory Warranty 



Door Lock Option $19.95 Write Protect Option . 

Interface Adapter Connector Set # 1 

(REMEX-to-Shugart) . . $14.95 (AC, DC, & Card Edge). 


$19.95 RFD 1000B Technical Manual $5.95 
RFD 1000B CASE (for use 
$10.95 (with Power Modules) $29.95 


SIRIUS 8" DISK 
POWER MODULES 

The Single and Dual Drive Power Modules are 
designed to provide DC and (switched) AC 
power for one (the Single Drive Power Mod- 
ule) or two (the Dual Drive Power Module— 
the DDPM will power three RFD 4000s or 
4001s) 8” Floppy Disk Drives. Many features 
are included for safe and reliable operation 
and the Power Modules come with our stan- 


dard 180 day WARRANTY (the Open Frame 
Power Supply warranty is tor 2 years). All 
Power Modules will work with either the RFD 
4000C/B or RFD 1000B case (color schemes 
match also). 

Dual Drive 

Power Module (DDPM) $139.95 

Single Drive 

Power Module (SDPM) 119.95 



The SIRIUS SYSTEMS 80+ Series of Floppy 
Disk add-ons are designed to provide un- 
matched versatility and performance for your 
computer. Consisting of four different add-ons, 
there is a 80 + Series Floppy Disk to meet your 
need. All 80+ Series Floppy Disk are compatible 
with the TRS-80* and come ready to plug in! 

COMMON CHARACTERISTICS 

■ 5 ms track-to-track access time 
m Auto-eject 

■ 180 day WARRANTY 

■ Exceptional speed stability — V/ 2 % 

U Sinple density (FM) or double density (MFMI 

m Ultra high reliability 

■ 2 year Power Supply Warranty 

■ Mix any or all 80 + Series on the same cable! 

■ Includes user accessible plugboard for drive 
reconfiguring 

SPECIFIC CHARACTERISTICS 
The SIRIUS 80+1 is a single sided, 40 track, 
highly reliable Floppy Disk add-on. Offering 5 
more tracks than the Radio Shack model, it cost 
$140 less! Formatted data storage is 102K/20K 
bytes single/double density. 

SIRIUS 80+1 $359.95 

The SIRIUS 80+2 is a dual sided, 70 track (35 
per side), highly versatile Floppy Disk unit. It 
appears to the TRS-80* as TWO 35 track drives, 
yet COST LESS THAN HALF THE PRICE! Even 
reater savings result, since data is recorded on 
oth sides of the media instead of only a single 
side. Using the plug board, it may be recon- 
figured for other computer systems! (The 80+2 
operates as Drive 0 and any of the other three 
addresses (with the sandard Radio Shack Cable) 
or as any of four drives (with the SS Standad 
Cable).! Formatted data storage is 80.6K/ 
161 ,2K bytes single/double density. 

SIRIUS 80+2 $449.95 

The SIRIUS 80+3 is a single sided, 80 track, 
"Quad” density Floppy Disk unit. Offering 2!ft 
times the storage of a Standard Radio Shack 
drive, the 80-r3 greatly reduces the need for 
diskettes correspondingly. Additionally, 
because of the increased storage and faster 
track-to-track access time, the 80+3 allows tre- 
mendously increased throughput for disk based 
programs!!! The 80+3 INCLUDES SIRIUS’s 
TRAKS-PATCH on Diskette. Formatted data 
storage is 204K/40K8 bytes single/double 
density. 

SIRIUS 80+3 $489.95 

The SIRIUS 80+4 Floppy Disk add-on is a 
double sided, 160 track (80 per side), 5V4" 
monster! The ultimate in state-of-the-art 5V4" 
Floppy Disk technology, to 80+4 is seen by the 
TRS-80* as two single sided disk drives, each 
with 80 tracks. Thus, in terms of capacity one 
80+4 is equivalent to 4% standard Radio Shack 
drives — a savings of over 73% (not to mention 
diskettes!!!). (With a double density converter, 
the available memory is huge!) The 80+4 is 
similar to the 80+2 in that it arrives configured 
as Drive 0 and any of the other three addresses 
(with the standard Radio Shack Cable) or as any 
of four drives (with the SS Standard Cable) The 
80+4 INCLUDES TRAKS-PATCH on Diskette. 
(The plug board is also included.) Formatted 
data storage is 408K single density or 816K 
bytes double density. 

SIRIUS 80+4 $624.95 

0 

All 80+ Series Floppy Disk add-ons operate a 5 
milliseconds track-to-track access time (eight 
times faster than the SA 400) but are Expansion 
Interface Limited to 12 milli-seconds for the 
TRS-80*. 

*TRS-80© Tandy Corp. 


SIRIUS 
SYSTEMS 

7528 Oak Ridge Highway 
Knoxville, Tennessee 37921 ^67 



TO ORDER CALL (615) 693-6583 

Phone Orders Accepted 9AM-7PM (ESDT) 

We accept MC, VISA, AE, COD (requires Certified Check, Cashier’s Check 
or Cash) and Checks (personal checks require 14 days to clear). SHIPPING 
AND HANDLING: $7.00 per Floppy Disk Drive or 80+ Module ■ 5% for other 
items (any excess will be refunded) ■ Foreign Orders add 10% for Shipping 
& Handling. Payment in U.S. currency ■ Tennessee residents add 6% Sales 
Tax ■ VOLUME DISCOUNTS AVAILABLE 


MPI 51/52 . . . 

A Great Reliable Mini-Drivel 


■ Fast! 5ms track to track access 

■ Exclusive Pulley-Band Design 

■ Unique Door/ Ejector Mechanism 
m Reliable V/ 2 % Speed Stability 

m Single/ Double Density Operation 

■ Industry/ ANSI Standard Interface 


(Single Head, 40 tracks, 120K/240K 
bytes Single/Double Density**) 

MPI 52 

(Dual Head, 70 tracks, (35/side), 
218.8K/437.5K Single/Double Den- 
sity**) 


$259.95 

$349.95 



MPI 91/92... NEW 

STATE-OF-THE-ART 

DISKDRIVE! 


MPI 91 

(Single Head, 80 tracks. 240K/480K 
Single/Double Density**) 

MPI 92 

(Single Head, 160 tracks (80/side), 
480K/960K Single/Double Den- 
sity**) .... 

** Unfomnatb. 


latteddata storage 


$389.95 

$499.95 


introducing the 
Versatile, Low-Cost 
OMEGA Series 
Controller 

As new technological advances bring down the 
cost of fast, reliable mass data storage, the need 
for an inexpensive, versatile controller have be- 
come greater and greater. To meet this need, 
SIRIUS SYSTEMS’ OMEGA Series Controller 
was designed. 

The SIRIUS OMEGA Series Controller Module 
utilizes an on-board microprocessor to 
mediate data transfer to a. wide variety of 
peripherals from an equally wide variety of host 
computer systems. Up to four Winchester Hard 
Disks (8” or 14"), four5V4” Floppy Disks Drives 
and/or up to eight 8” Floppy Disk Drives may be 
in use at one time. Host systems interfacing 
is accomplished via a parallel or a serial inter- 
face. With the additon of a Personality module, 
the OMEGA Series Controller Module is directly 
compatible with many popular com- 
puter systems (among them the TRS-80*. 
Apple, Heath, and others). Provision is made for 
the addition of a streaming tape drive, also. 

SPECIFIC HARDWARE 
FEATURES INCLUDE: 

■ Control of up to twelve Floppy Disk Drives 
(eight 8" and/or four5V *") 

• 8 '' and/or 5% ” Disk Drive Utilization 

• Single (FM) or Double (MFM) density data 
storage 

• Hard or Soft sectored diskette usage 

• Utilization of “Quad" density (96 tpi) 8" or 
5 ^/ 4 ” Disk Drives 

■ Control of up to four WINCHESTER type 
PRIAM DISKOS Disk Drives 

• 8" or 14" may intermix on the same cable 

• Accommodates 8" andlor 14” drives of 
5.3Mbytes to 154Mbytes 

• Ultra-Fast data transfers 

■ Extremely flexible host-controller interfacing 

SPECIFIC SOFTWARE 
FEATURES INCLUDE: 

■ Dynamic format modifications via command 
words 

■ Extremely flexible format acceptance for un- 
usual data storage formats 

■ Easily interfaces to standard operating sys- 
tems (TRS-DOS*, CP/M***, etc) 

■ Operates in either get/put sector mode or 
data string mode 

■ Performance parameters may be changed by 
EPROM replacement or Dynaminic Repro- 
gramming 

Dedicated systems cards are also available on a 
limited basis for the STD-BUS and the S 100. 
These cards feature shared memory also (again, 
software selectable) in addition to the regular 
OMEGA Series Controller Module features. Con- 
sult SIRIUS SYTEMS for current price and 
availability for the entire line of OMEGA Senes 
Memory Units and Controllers. Dealer inquir- 
ies are invited. 


iS Reader Service index— page 241 


Microcomputing, October 1980 135 



Low Overhead Cassette Format 
For 6800 Systems 


No longer do you have to suffer the inconvenience 
of using 300 baud Kansas City Standard. 


Dr. Gordon W. Wolfe 
Department of Physics 
The University of Mississippi 
University , MS 38677 


O wners of cassette-based 6800 micro- 
computers such as the SWTP 6800 
have for years put up with the slow loading 
and punching process known as the Kan- 
sas City Standard and the MIKBUG 
cassette format. The Kansas City Standard 
is akin to a frequency-shift encoding, but 
uses an eight-fold redundancy to assure 
proper character recognition. This eight- 
fold redundancy results in character rates 


of only 300 baud. 

But the MIKBUG format is the real culprit 
in most 6800-based systems. MIKBUG was 
one of the first, and certainly the most suc- 
cessful, of the 6800 operating systems, and 
manufacturers of other operating systems 
these days take pains to remain MIKBUG- 
compatible. Such operating systems as 
SWTBUG, SMARTBUG and RT-68/MX all 
have the same I/O routines in the same loca- 
tions, and all use the same tape punch for- 
mat. 

This has virtually locked the 6800 user in- 
to this format (Fig. 1). To output 16 bytes of 
data to tape, there is a “start of 
record”— the characters SI. Next comes 
the count of the number of bytes to follow. 


And here is where MIKBUG slows down. 

Nineteen (decimal) bytes will follow, so 
the computer punches that 13 (hex) bytes 
follow— but it punches a one and a three in 
ASCII. That is, for this and all succeeding 
bytes, it punches two characters. Following 
the count, there is the start address of the 
record (two bytes; four characters), and 
then 16 bytes of data (32 characters) and a 
checksum (two characters). Also, at the end 
there is a carriage return and line feed. 

Total It up: to punch, or record on 
cassette, only 16 bytes, MIKBUG must out- 
put a total of 44 characters, or 2.75 
characters for every byte of data. This is 
very wasteful overhead. If this overhead 
could be removed, cassette loading time (or 
TTY loading from paper tape) could be 
speeded up by a factor of 2.75. 

Some suggested remedies, such as in- 
creasing the record length from 16 to 256 
characters, or outputting a pseudo-binary 
(with the parity bit, bit 7, set to zero) record, 
have not completely succeeded. The best 
solution is to simply output straight binary 
data with as little overhead as possible. 

Fig. 2 shows a scheme this author has 
used successfully. As in MIKBUG, an SI is 
used as a start-of-record. Anything that oc- 
curs on the tape before this SI is ignored. 
Then follows the start address for the 
record (four ASCII characters representing 
two bytes) and a space. Then follows, byte 
for byte, one character for one byte in the 
same order as in memory. Any number of 
bytes are punched— one byte, up to all of 
memory. When data is finished, an end-of 
record “S9R” is punched. 

The Program BIPNCH 

An assembly-language program named 
BIPNCH has been written to take care of 



SI I3I00044E923CI 5B 


Fig. 1. MIKBUG punch format. 



Fig. 2. BIPNCH punch format. 


136 Microcomputing, October 1980 


BPUNCH 

$7F00 

Punch subroutine 

DONE9 

$7F1D 

Subroutine prints end of record 

SECDEL 

$7F51 

Subroutine delays one second 

TLOOP 

$7F53 

Subroutine delays a number of 
half-seconds equal to ACCB 

BILOAD 

$7F62 

$7F9E 

Load subroutine 

Reset MP-C PIA FOR ECHO 

Table 1. 


(MIKBUG Monitor) 

* M A048 
A048 DF 7F 
A049 13 2A 
A04A 22 
*G 

10100 01FF (punches $0100-$01FF) 


Sample Run 1. 


data loading and punching in this binary 
format, and is shown in Program 1. The pro- 
gram was written for use on an SWTP 6800 
micro using RT68/MX as an operating 
system. It presumes memory at $A000, and 
that an MP-C control interface at $8004 is 
used for communication to the terminal. 
However, as will be shown later, the pro- 
gram may be easily modified to other 
systems. 

BIPNCH is an example of structured pro- 
gramming; that is, it is written as two 
monitor-called routines, and a series of 
subroutines. 

The punch routine, BOUT, is called from 
the monitor by executing location $7F2A. 
The program outputs a prompt (!) and waits 
for the user to input the start and end ad- 
dresses of the region to be punched. When 
this is done, the program calls the punch 
subroutine to output headers, data and end- 
of-record, and returns to the monitor. Sam- 
ple run 1 shows how it works. 

The loading routine, BIN, is called from 
the monitor by executing location $7FAB. 
The program disables the MP-C echo and 
loads the data automatically, returning to 
the monitor when done. 

Both routines will, of course, 
automatically start and stop the recorder if 
used with an AC-30 interface. 

It should be noted that the punch routine, 
if used with a terminal and AC-30 interface, 
will cause characters to print on the screen. 
Control characters will cause controlled 
devices to actuate (including recorder 
on/off), so it is recommended that the con- 
trol functions be deactuated when punch- 
ing. On the CT-1024 terminal by SWTP, this 
may be done by adding a switch that 
disconnects pin 3 of IC8 on the CT-CA cur- 
sor control board. There is no difficulty dur- 
ing the read routine, since the echo is 
disabled. 






NAM BIPNCH 

* 

E07E 




PDfiTfil EQU 

IE07E 

E0CC 




OUTS EQU 

$E0CC 

E0C8 




0UT4HS EQU 

IE0C8 

E04? 




BfiDDR EQU 

$E047 

E1D1 




OUTEEE EQU 

$E1D1 

8016 




ST8DR EQU 

$8616 

8014 




ENflDR EQU 

$8614 

E0E3 




C0NTL EQU 

IE6E3 





♦INPUT ROUTINE DOES 
♦NOT STRIP PfiRITV BIT 

E359 




INEEE EQU 
* 

$E359 

7F00 




ORG 

* 

$7F60 





♦PUNCH SUBROUTINE 

7F00 

CE 

7F 

B0 

BPUNCH LDX 

I0PHDR 

7F03 

BD 

E8 

7E 

JSR 

PDfiTfil 

7F06 

CE 

fie 

16 

LDX 

♦STADR 

7F09 

BD 

E8 

C8 

JSR 

0UT4HS 

7F0C 

FE 

m 

16 

LDX 

STADR 

7F0F 

fib 

00 


M0RE1 LDfifi 

0/ X 

7F11 

BD 

El 

D1 

JSR 

OUTEEE 

7F14 

BC 

80 

14 

CPX 

ENfiDR 

7F17 

27 

03 


BEQ 

D0NE1 

7F19 

08 



I NX 


7F1H 

28 

F3 


BRfi 

M0RE1 

7F1C 

39 



D0NE1 RTS 
* 






♦END OF RECORD 

7F1D 

CE 

7F 

B3 

D0NE9 LDX 

IESS9 

7F26 

BD 

E0 

7E 

JSR 

PDfiTfil 

7F23 

8D 

2C 


BSR 

SECDEL 

7F25 

86 

14 


LDflfi #$14 

7F27 

7E 

El 

D1 

JMP 

jit 

OUTEEE 





♦MONITOR CALL FOR 
♦PUNCH ROUTINE 

7F28 

CE 

7F 

67 

BOUT LDX 

♦PROMPT 

7F2D 

BD 

E0 

7E 

JSR 

PDfiTfil 

7F36 

BD 

E0 

47 

JSR 

BfiDDR 

7F33 

FF 

88 

16 

STX 

ST8DR 

7F36 

BD 

E6 

CC 

JSR 

OUTS 

7F39 

BD 

E8 

47 

JSR 

BfiDDR 

7FX 

FF 

86 

14 

STX 

ENADR 

7F3F 

8D 

10 


BSR 

SECDEL 

7F41 

8b 

12 


LDfifi 

#$12 

7F43 

BD 

El 

D1 

JSR 

OUTEEE 

7F46 

8D 

09 


BSR 

SECDEL 

7F48 

8D 

B6 


BSR 

BPUNCH 

7F48 

80 

B1 


BSR 

DONES 

7F4C 

SD 

03 


BSR 

SECDEL 

7F4E 

7E 

E0 

E3 

JMP 

* 

CONTL 





♦SUBROUTINE 
♦ONE SECOND 

DELAYS 

7F51 

C6 

02 


SECDEL LDfiB 

#2 





♦HALF SEC0N; 

) DELAY 





*8T TLOOP IF B=i 

7F53 

CE 

F4 

FF 

TLOOP LDX 

#$F4FF 

7F56 

09 



DECX DEX 


7F57 

26 

FD 


BNE 

DECX 

7F59 

58 



DECB 


7F5R 

26 

F7 


BNE 

TLOOP 

7F5C 

39 



RTS 

* 






♦MONITOR CALL TO 
♦OUTPUT "S9R" DfiTfi END 

7F5D 

80 

BE 


S9 BSR 

D0NE9 

7F5F 

7E 

EB 

E3 

JMP 

* 

CONTL 





♦SUBROUTINE FOR 
♦BINARY DATA IN 

7F62 

CE 

7F 

BB 

BIL0AD LDX 

#RD0N 





♦SET PIA NO 

ECHO 

7F65 

C6 

3C 


LDfiB 

#$3C 

7F67 

F7 

80 

07 

STAB 

$8067 

7F68 

BD 

E0 

7E 

JSR 

PDfiTfil 





♦INPUT DATA 

HEfiDER 

7F6D 

BD 

E3 

59 

AGAIN JSR 

INEEE 

7F70 

81 

53 


CMPA 

#'S 

7F72 

26 

F9 


BNE 

fiGAIN 

7F74 

80 

E3 

59 

JSR 

INEEE 

7F77 

81 

31 


CMPfi 

#'l 

7F79 

26 

F2 


BNE 

AGAIN 

7F7B 

BD 

E0 

47 

JSR 

BfiDDR 


In addition to the two monitor call 
routines listed above, there are user- 
accessible subroutines which may be of 
value in other programs. They include the 
punch and load subroutines themselves. In 
MIKBUG, the user must go to the monitor to 
write to or read from tape, or write his or her 
own routines. Here, the routines are usable 
directly. To punch, load the start and end 
addresses to punch into $A016 and $A014, 
respectively, and jump to the subroutine at 
$7F00. To load, or read a tape, jump to the 
subroutine at $7F62. Table 1 is a list of 
subroutines, their locations and what they 
do. Note that a monitor-callable program 


7F7E 

BD 

E3 59 


JSR 

INEEE 

7F81 

81 

28 


CMPfi 

#$26 

7F83 

26 

E8 


BNE 

AGAIN 




♦DfiTfi 

INPUT 


7F85 

8D 

ID 

M0RE2 

BSR: 

INPUT 

7F87 

81 

53 


CMPfi 

#'S 

7F89 

26 

Ffl 


BNE 

M0RE2 

7F8B 

SC- 

17 


BSR 

INPUT 

7F8D 

SI 

39 


CMPfi 

#'9 

7F8F 

26 

F4 


BNE 

M0RE2 

7F91 

8D 

11 


BSR 

INPUT 

7F93 

81 

52 


CMPA 

i'R 

7F95 

26 

EE 


BNE 

M0RE2 

7F97 

8D 

B8 


BSR 

SECDEL 

7F99 

86 

13 


LDAfi 

#$13 

7F9B 

BD 

El D1 


JSR 

OUTEEE 




♦PIfl RESET 


7F9E 

C6 

34 


LDAB 

#$34 

7Ffi0 

F7 

80 07 


STAB 

$8067 

7Ffi3 

39 



RTS 


7Ffi4 

BD 

E3 59 

INPUT 

JSR 

INEEE 

7Ffi7 

fl7 

00 


STAR 

0,X 

7F89 

08 



I NX 


TFfiA 

39 


* 

RTS 





♦MONITOR CALL FOR 




♦BINARY DfiTfi INPUT 

7F8B 

8D 

B5 

BIN 

BSR 

B I LOAD 

7F8D 

7F 

E0 E3 


JMP 

C0f4TL 

7FB0 

53 


OPHDR 

FCC 

'Si' 

7FB1 

31 





7FB2 

04 



fcb 

4 

7FB3 

53 


ESS9 

FCC 

'S9R' 

7FB4 

39 

52 




7FB6 

04 



FCB 

4 

7FB7 

0D 


PROMPT 

fcb 

$D, $fi, J 

7FB8 

0fl 

21 




TFBfi 

04 





7FBB 

11 


RD0N 

FCB 

$11, $4 

7FBC 

04 


* 







EM) 



NO ERR6RCS) DETECTED 


SYMBOL TABLE. 



AGAIN 

7F6D 

BADDR 

E047 

BILOfiD 

7F62 

BIN 

7FAB 

BOUT 

7F2A 

BPUNCH 

7F80 

CONTL 

E0E3 

DECX 

7F56 

D0NE1 

7F1C 

D0NE9 

7F1D 

ENflDR 

A014 

ESS9 

7FB3 

INEEE 

E359 

INPUT 

7FA4 

MOREi 

7F0F 

M0RE2 

7F85 

OPfOR 

7FB8 

0UT4HS 

E0C8 

OUTEEE 

E1D1 

OUTS 

E0CC 

PDfllfil 

E07E 

PROMPT 

7FB? 

RDON 

7FBB 

S9 

7F5D 

SECDEL 

7F51 

STADR 

A01b 

TLOOP 

7F53 




Program 1. 


Microcomputing, October 1980 137 


PERSONAL 

COMPUTER 

SYSTEMS 
fcippkz computer 

m Sales and Service 



APPLE II, 16K, List $1195 $ 989 

32K, List $1395 $1169 

48K 1259 

ATARI® 400™, List $630 
OUR PRICE ONLY $499 

820 PRINTER, List $599.95 $499 

810 DISK DRIVE, List $699.95 $589 



only $2799 

• Extended BASIC Language 

• Advance Graphics 

• CRT Built-In Display 

• Magnetic Tape Cartridge for Storage 


CALCULATORS BY 


Whn 1 HE WLETT 
minM PACKARD 


HP-41 C Calculator, “A System" . . 

$244.95 

HP-32E Scientific w/Statistics 

$ 53.95 

HP-33C Scientific Programmable . . 
HP-34C Advanced Scientific 

. 99.95 

Programmable 

123.95 

HP-37E Business Calculator 

HP-67 Handheld Fully Advanced 

. 58.95 

Programmable Scientific for 
Business 8- Engineering 

298.95 

HP-^7 Desktop w/Built-in Printer . . 

579.95 


COMMODORE PET Call for Prices 

Prices do not include shipping by UPS. All 
prices and offers are subject to change without 
notice. 


Pi 


ersonal 
omputer 
ystems 


C 


s 


is 303 


609 Butternut Street 
Syracuse, N.Y. 13208 
(315) 478-6800 


PDATA 1 

$E07E 

Output data string terminated by 
EOT 

OUTS 

$E0CC 

Output a space 

OUT4HS 

$E0C8 

Output 2 bytes in ASCII hex, 
with a space 

BADDR 

$E047 

Input 2 bytes in ASCII hex 

OUTEEE 

SE1D1 

Output a character from ACCA 

CONTL 

$E0E3 

Jump to monitor 

Table 2. 


places “S9R” at the end of a tape; this is 
useful even with MIKBUG. 

How Does It Work? 

In a word, magnificently. Instead of 22 
minutes to load 8K BASIC, it now requires 
only eight minutes. It is possible to double 
the amount of work I get out of my machine. 

The program fits very nicely into a 256 x 
8 1702A EPROM at $7F00, with con- 
siderable room left over for other routines. 
Only four bytes of RAM are used at 
$A014-$A017, and the code is not self- 
modifying, so that it may be placed in 
EPROM. 

Modifications to Other Systems 

As stated above, the program may be 
easily modified for other 6800 systems. 

If you desire to place the program into a 
location other the $7F00, you may reassem- 
ble it to any other location, or modify the ad- 
dresses of the instructions at $7F00, $7F1 D, 
$7F2A and $7F62. 

Virtually all the external routines in 
BIPNCH are MIKBUG-compatible. Table 2 
lists these routines, and what they do. 
There should be no trouble with MIKBUG, 
SWTBUG, SMARTBUG or RT-68/MX. 

If you are using an ACIA, rather than an 
MP-C control interface, the PIA echo/no 
echo routines at $7F65 and $7F9E must be 
rewritten. 

The only critical external routine which 
will require extensive modification is the 
character input routine. It was discovered 
that both MIKBUG and RT-68/MX strip the 
most significant bit (set bit 7 equal to zero) 
whenever a character is input via the 
subroutine INEEE at $E1AC. Naturally, this 
is unacceptable, because when you save 
programs, approximately half the instruc- 
tion bytes will have bit 7 equal to 1. 

In RT-68/MX, the solution is simple. Enter 
the subroutine at $E359, after the parity bit 
stripping function. Then the character is in- 
put exactly as recorded. For MIKBUG and 
SMARTBUG, however, the solution is not so 
simple. It is not possible to bypass the pari- 
ty stripping so simply. I have no information 
on SWTBUG, but I presume it is similar. 

For those who use these other monitors, 
Program 2 shows an input routine for MP-C 
interface which does not strip the parity bit. 
It is ORGed at $E359, but is relocatable to 


pm 


NAM INEEE2 

* 

♦MP-C INPUT ROUTINE 
♦DOESN'T STRIP PflRITV 
♦RELOCATABLE 
♦NON-REENTRANT 
♦INPUTS CHftR TO ACCA 
♦FROM MP-C AT $8664 
♦ 

XTEMP EQU $8016 

E359 


ORG $£359 

8 

UJ 

37 

* 

PSHB 

E35R 

FF fiO 10 

STX XTEMP 

E35D 

CE 86 04 

LDX #$8664 

£ 

E360 

fl6 00 

♦WAIT FOR STftRT BIT 
♦AND STftRT TIMER 
PIA LDftft 6,X 

E362 

20 FC 

BMI PIfi 

E364 

6F 02 

CLR 2/X 

E366 

8D 22 

BSR BIT 

E368 

8D 1C 

BSR WAIT 

E36fi 

C6 64 

LDAB #4 

E36C 

E7 02 

STftB 2/ X 

* 

E36E 

58 

♦INPUT 8 BITS 
ftSLB 

E36F 

SD 15 

PIA2 BSR WRIT 

E371 

0D 

SEC 

E372 

69 06 

R0L 0/ X 

E374 

46 

RORfi 

E375 

5R 

DECB 

E376 

26 F? 

BNE PIA2 

E378 

80 0C' 

BSR WRIT 

* 

E37A 

EG 02 

♦TEST # STOP BITS 
CHECK LDAB 2, X 

E37C 

58 

ftSLB 

E37D 

2A 62 

BPL RES 

E37F 

8D 05 

BSR WAIT 

* 

E381 

FE R0 16 

♦RETURN 

RES LDX XTEMP 

E3o4 

33 

PULB 

E385 

39 

RTS 

£ 

E3S6 

60 02 

♦TIMERS 

WAIT TST 2/X 

E388 

2ft FC 

BPL WAIT 

E38R 

6C 02 

BIT INC 2j X 

E3SC 

6ft 82 

DEC 2/X 

E38E 

39 

RTS 

* 


END 

NO ERR0RCS) DETECTED 

SVM6UL TROLL 


BIT 

E38A 

CHECK E37A 

PIA 

E360 

PIR2 E36F 

RES 

E381 

WAIT E386 

XTEMP 

R010 



Program 2. 


any other location. I must emphasize that 
this is similar to, but not the same way as it 
is done in RT-68/MX, to avoid copyright vio- 
lations. 

Last, there are some difficulties with 
using the binary loading technique. I have 
pointed out the control character problem 
above. Just as serious is the lack of 
checksum. The program has no way of 
knowing if there were any loading errors. 

I must say, though, that In eight months 
of using the program, I have never had a bad 
load. Even if I did, it only takes a few 
minutes to re-load. U 


138 Microcomputing, October 1980 




FROM PROGRAMMA 

HI-RESOLUTION GRAPHICS FOR THE TRS-80* 



The 80-GRAFIX board includes 
two sets of lower case characters 
at no additional cost. 



DEMONSTRATION PROGRAMS 

The 80-GRAFIX board is supplied 
with a Character Generator software 
and several demonstration programs. 



FINALLY, AT LAST. . . 

HI- RESOLUTION GRAPHICS is available for your 
TRS-80 computer system. The 80-GRAFIX board from 
PROGRAMMA International, Inc. gives your TRS-80 high 
resolution capability that is greater than the Commodore 
CBM/PET or even the revered APPLE II. 

80-GRAFIX gives the TRS-80 an effective screen of 
384X192 pixels, versus the normal 127X192 for the 
TRS-80, 80X50 for the CBM/PET, or the 280X192 of an 
APPLE II. As an added feature, 80-GRAFIX offers you 
lower case characters at no additional cost. Of course, you 
can also create your own set of up to 64 original characters 
using the supplied Character Generator software. 

The 80-GRAFIX board is simple to install (note that this 
voids your Radio Shack warranty), and programming is 
done through BASIC. 80-GRAFIX opens up a whole new 
realm of software development and excitement never 
dreamed of for the TRS-80! 



INVERSE VIDEO 

The 80-GRAFIX board allows you to 


do inverse video to high light your 
screen displays. 



CHARACTER GENERATOR 


The supplied character generator 
software allows you to create your 
own character set of up to 
64 original characters. 



REAL-TIME GRAPHIC GAMES 

With the 80-GRAFIX board you can 
write exciting real-time games using 
BASIC. 



EASY INSTALLATION 

The 80-GRAFIX board is simple to 
install and fits inside the TRS-80 case. 


r T 7*1 4 I 5 » ‘1 7 1 *1 

CH«nnsr... ^ 

♦ IJIJU 1 

*» wr HU 1 

ir ] 

(OWIK AOHKT!) I 


5| ‘| WJSBTM 

OOSCTB ST... 

'•! 11 ljr 

mi mnat 

(Cxxhi t omm 
a* a aotm a 

<9ftW TO )!2 

(STxr mo 


GRAPHICS GALORE 

The 80-GRAFIX board and 
the supplied Character Generator 
allow you to become an artist. 



ELECTRONIC DESIGN 

The 80-GRAFIX board has unlimited 
application in Electronic design 
and Education. 



80 GRAFIX HI-RESOLUTION 

Finally, the only means t6 protect 
your computer investment is to order 
an 80-GRAFIX board TODAY! 



EXCITEMENT & FUN 

Open up a new realm of software 
development with the 80-GRAFIX 
board. 


Available exclusively through PROGRAMMA at the cost of $149.95 

Please check with us for availability prior to ordering 

VISA and MASTERCHARGE accepted 

TRS-80 is a registered trademark of the Tandy Corp. 


PROGRAMMA 
INTERNATIONAL, INC. 

3400 Wilshire Blvd. 

Los Angeles, CA 90010 

(213) 384-0579 • 384-1116 • 384-1117 


\S Reader Service index— page 241 


Microcomputing, October 1980 139 





ANNOUNCING: 


NEW! 


PROGRAMMING TOOLS 
FOR YOUR TRS-80 


INSIDE LEVEL II 

The Programmers Guide to the TRS-80 ROMS 

INSIDE LEVEL II is a comprehensive reference guide to the Level II ROMs 
which allows the machine language or Basic programmer to easily utilize the 
sophisticated routines they contain. Concisely explains set-ups, calling 
sequences, and variable passage for number conversion, arithmetic opera- 
tions, and mathematical functions, as well as keyboard, tape, and video 
routines. Part II presents an entirely new composite program structure which 
loads under the SYSTEM command and executes in both Basic and ma- 
chine code with the speed and efficiency of a compiler. In addition, the 18 
chapters include a large body of other information useful to the programmer 
including tape formats, RAM useage, relocation of Basic programs, USR 
call expansion, creating SYSTEM tapes of your own programs, interfacing 
of Basic variables directly with machine code, a method of greatty increasing 
the speed at which data elements are stored on tape, and special precau- 
tions for disk systems. INSIDE LEVEL II is a clearly organized reference 
manual. It is fully typeset and packed with nothing but useful information. It 
does not contain questions and answers, ROM dumps, or cartoons. INSIDE 
LEVEL II $15.95 

4 SPEED OPTIONS FOR YOUR TRS-80! 

The SK-2 is the most versatile clock modification available for the 
TRS-80. Speeds may be switched between normal, an increase of 
50%, or a 50% reduction. Instructions are also given for a 100% 
increase to 3.54 MHz, though the TRS-80 is not reliable at this 
speed. Speed may be changed with a toggle switch or on software 
command. It will automatically return to normal speed any time a 
disk is active, requires no change to the operating system, and has 
provisions for adding an LED to indicate when the computer is not 
at normal speed. It mounts inside the keyboard unit with only 4 
necessary connections for the switch option (switch not included), 
and is easily removed if the computer ever needs service. The 
SK-2 comes fully assembled with socketed IC’s and illustrated 
instructions. SK-2 $24.95 

TELECOMMUNICATIONS PROGRAM 

This program allows reliable high speed file transfers between two 
disk-based computers over modems or direct wire. It is menu 
driven and extremely simple to use. Functions include real-time 
terminal mode, save RAM buffer on disk, transmit disk file, receive 
binary files, examine and modify UART parameters, program 8 
custom log-on messages, automatic 16-bit checksum verification 
of accurate transmission and reception, and many more user 
conveniences. Supports line printers and lowercase characters. 
With this program you will no longer need to convert machine 
language programs to ASCII for transmission, and you will know 
immediately if the transmission was accurate. TELCOM $29.95 

PROGRAM INDEX FOR DISK BASIC 

Assemble an alphabetized index of your entire program library 
from disk directories. Program names and free space are read 
automatically (need not be typed in) and may be alphabetized with 
a fast Shell/Metzner sort by disk or program. The list may also be 
searched for any disk, program, or extension; disks or programs 
added or deleted; and the whole list or any part sent to the printer. 
Finally, the list itself may be stored on disk for future access and 
update. “The best thing since sliced bread" (January issue of ’80 
Microcomputing). One drive and 32K required. INDEX $19.95 

SINGLE STEP THROUGH RAM OR ROM 

STEP80 allows you to step through any Basic or machine lan- 
guage program one instruction at a time, and see the address, 
hexadecimal value, Zilog mnemonic, register contents, and step 
count for each instruction. The top 14 lines of the video screen are 
left unaltered so that the “target program” may perform its display 
functions unobstructed. STEP80 will follow program flow right into 
the ROMs, and is an invaluable aid in learning how the ROM 
routines function. Commands include step (trace), disassemble, 
run in step mode at variable step rate, display or alter memory or 
CPU registers, jump to memory location, execute a CALL, set 
breakpoints in RAM or ROM, and relocate to any page in RAM. The 
display may also be routed to your line printer through the device 
control block so custom print drivers are automatically supported. 
STEP80 $16.95 


ORDERING: Complete satisfaction is guaranteed or a full refund will be 
made. All programs are shipped on cassette unless $5 is included for a 
formatted (no system) disk. Include $1 postage and handling. California 
residents add 6% sales tax. Visa, Mastercharge and COD orders accepted. 

MUMFORD MICRO SYSTEMS 

Box 435-C Summerland, California 93067 (805) 969-4557 


MICROSTAT 

A complete statistics package for business, scientific, 
education and research work. No other package has 
the features of MICROSTAT. For example: 

• File oriented with COMPLETE editing 

• A Data Management Subsystem for editing, sort- 
ing, ranking, lagging, data file transfers PLUS 11 data 
transformations (§.g., linear, reciprocal, exponential, 
etc.) • Frequency distributions • Simple and multiple 
regression • Time series (including exponential smooth- 
ing) «11 Non-parametric tests • Crosstabs/ Chi-square 

• Factorials (up to 1,000,000!), permutations, combinations 

• 8 Probability distributions • Scatterplots 

• Hypothesis test (Mean, proportion) • AN0VA 
(one and two-way) • Correlation • Plus many 
other unique features 

Users manual: $10.00 (credited towards purchase) 
and includes sample data and printouts. Uses 
NORTH STAR BASIC 32K of memory, one or two disk 
drives (2 recommended). Printer optional. Price: $200.00 

ECOSOFT 

P.0 Box 68602 
Indianapolis, IN 46268 



**83 

Phone orders: 

(317) 253-6828 


^sss^jg^sssKRELL SOFTWARE 

Rk presents for the TRS-80* 
’ PET, Apple II, and Apple II 


Plus 


ELECTORAL COLLEGE 1980 


The Tool for forecasting the outcome of the 1980 presidential Election. 
Will it be CARTER? REAGAN? ANDERSON? or will the election be forced 
into the House of Representatives? This program, developed by a pro- 
fessor of Political Science is built to be used in two ways: 

1. During the political campaign prior to the election and, 

2. On Election Night, as the partial returns roll in on network news. 
Using state by state data on previous elections that the program provides, 
simulated elections are run and the probability of outcomes calculated. 
$14.95 


COLLEGE BOARDS 


The best way to sharpen your skills for the College Board SAT Exams is 
to work on actual examinations. Each of these 4 programs confronts the 
user with a virtually limitless series of questions and answers. Each is 
based on past SAT exams and presents material of the same level of diffi- 
culty and in the same form as used in the verbal and mathematical por- 
tions of the College Board Examinations. Scoring on each exam is pro- 
vided in accordance with the formula used by College Boards. 

COLLEGE BOARD - VOCABULARY 19.95 

COLLEGE BOARD -WORD RELATIONSHIPS 19.95 

COLLEGE BOARD -MATH PART A 19.95 

COLLEGE BOARD -MATH PART B 19 95 

COMPLETE SET 59 95 


TIME TRAVELER 


The best of the adventure games. Confronts player with complex deci- 
sion situations and at times, the demand for real time action. Using the 
time machine, players must face a challenging series of environments 
that include: the Athens of Pericles, Imperial Rome, Nebuchadnezzar's 
Babylon, Ikhnaton's Egypt, Jerusalem at the time of the crucifixion, the 
Crusades, Machiavelli’s Italy, the French Revolution, the American 
Revolution and the English Civil War. Deal with Hitler’s Third Reich, the 
Vikings, etc. Involve yourself with historical military and government 
operations, markets, etc. in fascinating game situations. Each game Is 
unique! $24.95 

•All programs require 16K • TRS 90 programs require Level II BASIC • Apple programs require Applesoft BASIC. 
m 124 

Send check or money order to Krell Software S© 
-21 Millbrook Drive, Stony Brook, NY 11790 (516) 751-51395 


140 Microcomputing, October 1980 









SPECIAL PRICES 


We offer a complete selection of 
hard ware, software, peripherals. 

^■ppfcz 

OHIO SCIENTIFIC 
VECTOR GRAPHICS 
HEWLETT-PACKARD 
COMMODORE PET 

Immediate shipping. 

VISA/MC O.K. 

Contact us for a catalog, 
or our quote. 

Computer Distributors 
12704 North Freeway 
Houston, TX 77060 
(713)821-2702 " 52 




When you buy your 
TRS-80™ equipment! 

Use our toll free number to 
check our price before you buy 




HMEGA “WHOLESALE COMPUTER PRICES 
SALES DIRECT TO THE PUBLIC 

CO. > ' 89 12 Meeting St, Cumberland, R.1. 02864 


TRS-80 

Model II • $3,500 


Products are 
NOW 
IN 

STOCK 

AT 

HMEGA 
Sales 
CO. A 


INTERTEC SUPERB RAIN 
32K RAM • $2449.00 


Epson TX-80 • $745 


OMEGA OFFERS THE BEST DELIVERY AND PRICE ON: 
APPLE • ATARI • TRS-80 MODEL II • INTERTEC • 
T.I. 810 • HEWLETT-PACKARD-85 • SOROC • 
COMMODORE » NEC « QOME » CENTRONICS 


HMEGA sells only factory fresh, top quality merchandise to our customers. 
HMEGA will try to match any current advertised price with similar purchase conditions. 
^^^^^Before you buy anywhere else - be sure to call HMEGA Sales Co. 
1401-722-1027 or 


7IMEGA ships via LIPS, truck, or air. COD’s, VISA, Mastercharge accepted. 


NEC 5510 Printer 

$ 2395 

Tractor Feed Option 
$ 180 


CALL TOLL FREE FOR OMEGA'S PRICE! 


HMEGA 
TOLL FREE 


Reader Service index— page 241 


Microcomputing, October 1980 141 





Exploring CT-82 Graphics 


The author leads you on an expedition 
to uncover the capabilities of this SWTP video terminal. 



” ■ 


1 1 — 1 


Photo 1. CT-82 from the outside. 


CLEAR GRAPHICS DOT— Turn off a pixel at the specified position. 

INVERT GRAPHICS DOT— Invert a pixel at the specified graphics position. 

SET GRAPHICS DOT— Turn on a pixel at the specified graphics position. 

CLEAR GRAPHICS LINE— Clear the straight line between two specified points. 

INVERT GRAPHICS LINE— Invert a straight line between two points, i.e., turn off each point that is on and turn on 
each point that is off. 

SET GRAPHICS LINE— Draw a straight line between two points. 

PITCH DOWN GRAPHICS SCREEN— Roll the pixels on the screen downward one pixel position. 

PITCH UP GRAPHICS SCREEN— Roll the pixels on the screen upward by one pixel position. 

YAW LEFT GRAPHICS SCREEN— Shift the pixels on the screen left by one pixel position. 

YAW RIGHT GRAPHICS SCREEN— Shift the pixels on the screen right by one pixel position 

Fig. 1. CT-82 graphics commands. (Note: A pixel is a picture element, the smallest ad- 
dressable piece of data on the graphics screen.) 


Phil Hughes 
PO Box 2847 
Olympia, WA 98507 


T he CT-82 is a video terminal by South- 
west Technical Products Corporation 
(see Photo 1). Internally, it is based on a 
6802 microprocessor and a Motorola 6845 
CRT controller 1C (see Photo 2). In its normal 
mode, it can display either 16 or 20 lines of 
82 alphanumeric characters each and sup- 
port scrolling (when the last line on the 
screen is filled, all lines are rolled up to 
allow space for a new line). It features other 
capabilities not found in “dumb” terminals. 

Additionally, the CT-82 supports graph- 
ics commands that allow you to draw and 
manipulate dots and lines on the screen. 
Each of these capabilities is exercised by 
sending a specific control sequence from 
the computer to the CT-82. Figure 1 lists the 
graphics commands supported by the 
CT-82. 


142 Microcomputing, October 1980 




TEST82 


To get the feel of the graphics capabili- 
ties, I wrote an assembly-language pro- 
gram, TEST82 (see Listing 1), which allows 
me to use the set and clear commands for 
both dots and lines. This program sends the 
required sequence to put the CT-82 into its 
graphics mode and then prompts for a com- 
mand. Figure 2 lists the commands 
recognized by TEST82. The display il- 
lustrated in Photo 3 was created by execut- 
ing TEST82 and entering the following com- 
mands: 

DL 0 0 183 0 Top line 
DL 0 62 183 62 Bottom line 
DL 0 0 0 62 Left side 

DL 183 0 183 62 Right side 
DL 20 0 60 60 Create 
DL 60 0 20 60 X 

Note that all of the assembly-language 
routines in this article were written using 
RRMAC from Ed Smith’s Software Works. 
Also, they all reference an “include” file for 
Flex Interface addresses. (Flex is a disk op- 
erating system for the 6800 by Technical 
Systems Consultants.) Listing 2 is a dummy 
program that references the include file. 
This shows all the Flex entry equates and 
their values. 

Internally, TEST82 is easy to follow. 
When initially entered (at label START), the 
CT-82 is put in the graphics mode by send- 
ing it the string SMSG. Scrolling is also dis- 
abled so that entering a carriage return on 
the command line (bottom line of the 
screen) will not cause the display to scroll 
up one line. The code starting at the label 
NEXTCMD gets a line of user input using 
the Flex subroutine INBUFF, saves the first 
input character in accumulator B, saves the 
second input character in accumulator A 
and then skips the spaces that should fol- 
low the commands. 

The command is then analyzed, and con- 
trol is passed to the appropriate rou- 
tine— EXIT for the X command, CLEAR for 
the CS command, DRAW for the D com- 
mand and ERASE for the E command. If the 
command is not valid, routine INPERR is- 
sues an error message, waits for a carriage 
return and then returns to the NEXTCMD 


cs 

x 

DP XI Y1 
EP XI Y1 
DL XI Y1 X2 Y2 
EL XI Y1 X2 Y2 


Clear screen 
Exit 

Draw point 
Erase point 
Draw line 
Erase line 


Note: the screen is composed of 184 vertical columns 
of 66 pixels each. These pixels are numbered 0-183 
from left to right and 0-65 from top to bottom. The X 
value in each command is the column number and the 
Y value is the row number. Rows 63 through 65 are not 
available as they are used as the command entry line. 

Fig. 2. TEST82 commands. 



Photo 2. Inside view of the CT-82. 


Listing 1. TEST82. 


2 

3 

4 

138 

139 

140 

141 

142 

143 

144 

145 

146 

147 

148 

149 

150 
1 51 
152 


3R 
12 i 
3R 
12 i 
21 * 

30 * 
34 
3R 
2R 

11 * 
15 


0000 

0000 


0000 
El D1 
0000 

0000 CE 00EB 
0003 BD AD 1 E 
0006 CE 00F2 
0009 BD ADI E 
000C BD AD 1 B 


NAM TEST82 
OPT X R F , PNT 

CT82 GRAPHICS TEST PROGRAM 
SSC 8-2-79 VI. 14 

OPT PNT 


0UTEEE 

START 


000 F BD 
0012 24 
0014 7E 

0017 16 

0018 BD 
00 1 B 36 


A D 2 7 

03 (0017) 
0040 


EQU 

EQU 

LDX 

JSR 

LDX 

JSR 

JSR 

JSR 
BCC 
J MP 
TAB 
JSR 
PSH 


X'EIDI ' 


# SMSG 

PSTRNG 

^PROMPT 

PSTRNG 

INBUFF 

NXTCH 

$ 5 

INPERR 


USED FOR SPECIAL CHARAC 
TERS 


GET INPUT INTO LINE BUF 
FER 

GET FIRST CHAR 


GET POSSIBLE L OR P 
SAVE 


154 

28 

001 F 

32 



PUL 

A 



155 

30 

0020 

Cl 

43 


CMP 

B 

K'C 

CLEAR? 

156 

34 

0022 

26 

07 (002B) 


BNE 


$8 


157 

2 R 

0024 

81 

53 


CMP 

A 

UZ' S' 

CS - CLEAR SCREEN ? 

158 

6 

0026 

26 

03 (002B) 


BNE 


S8 


159 

3R 

0028 

7 E 

00B3 


J MP 


CLEAR 


160 

2 R 

002B 

Cl 

44 

S8 

CMP 

B 

KC'D' 

DRAW? 

161 

6 

00 2D 

26 

03 (0032) 


BNE 


sio 

NO 

162 

3 R 

002 F 

7 E 

0055 


J MP 


DRAW 


163 

2 R 

0032 

Cl 

45 

S10 

CMP 

B 

n C’E' 

ERASE? 

164 

6 

0034 

26 

03 (0039) 


BNE 


$12 

NO 

165 

3R 

0036 

7 E 

0084 


J MP 


ERASE 


166 

2 R 

0039 

Cl 

58 

S 1 2 

CMP 

B 

#C ' X ' 

EXIT? 

167 

6 

00 3B 

26 

03 (0040) 


BNE 


INPERR 


168 

3R 

003D 

7E 

004 C 


J MP 


EXIT 


169 

3R 

0040 

CE 

00FF 

INPERR 

LDX 


# I E MSG 


1 70 

12 * 

0043 

BO 

ADI E 


JSR 


PSTRNG 

ERROR MESSAGE 

171 

21 * 

0046 

BD 

ADI B 


JSR 


INBUFF 

WAIT FOR CR 

172 

24 

0049 

7 E 

0006 


J MP 


NEXTCMD 


173 

3R 

004 C 

CE 

0125 

EXIT 

LDX 


0RESMSG 

RESET CT-82 

1 74 

12 * 

004 F 

BD 

ADI E 


JSR 


PSTRNG 


175 

1 5 

0052 

7E 

A d03 


J MP 


WARMS 

RETURN TO FLEX 

176 





* 





177 


0055 



DRAW 

EQU 


* 

DRAW POINT OR LINE 

178 

2 R 

0055 

81 

50 


CMP 

A 

#C ' P ' 


179 

6 

0057 

27 

07 (0060) 


BEQ 


DRAW.PT 


180 

2R 

0059 

81 

4C 


CMP 

A 

# C ' L ' 


181 

6 

00 5B 

27 

12 (006 F ) 


BEQ 


DRAW.LN 


182 

3R 

00 5 D 

7E 

0040 


J MP 


INPERR 

INPUT ERROR 

183 

9R* 

0060 

B0 

00 D 4 

DRAW . PT 

JSR 


INTW0 

GET X AND Y 

184 

14 

0063 

FE 

0149 


LDX 


X . AND . Y 

GET X AND Y 

185 

20 

0066 

F F 

01 2 F 


ST X 


DPX 

SAVE IN STRING 

186 

23 

0069 

CE 

01 2 D 


LDX 


#DP 


187 

26 

006C 

7E 

00B9 


J MP 


SEND 

SEND IT 

188 





* 





189 


006 F 



DRAW.LN 

EQU 


* 


190 

9R* 

006 F 

BD 

00C8 


JSR 


INF0UR 

GET U, V, X, AND Y 

191 

1 4 

0072 

FE 

0147 


LDX 


U. AND.V 


192 

20 

0075 

F P 

0134 


STX 


DLU 


193 

25 

0078 

FE 

0149 


LDX 


X. AND. Y 


194 

31 

007B 

F F 

0136 


STX 


DLX 


195 

34 

007E 

CE 

0132 


LDX 


*DL 


196 

37 

0081 

7E 

00B9 


J MP 


SEND 


197 





* 





1 98 


0084 



ERASE 

EQU 


* 

ERASE LINE OR POINT 

199 

2 R 

0084 

81 

50 


CMP 

A 

#C'P' 

POINT? 

200 

6 

0086 

27 

07 (008 F ) 


BEQ 


ERS.PT 

YES 

201 

2R 

0088 

81 

4C 


CMP 

A 

#C'L' 

LINE? 

202 

6 

008 A 

27 

12 (009E) 


BEQ 


ERS.LN 

YES 

203 

3 R 

008 C 

7E 

0040 


J MP 


INPERR 

ERROR 

204 

9R* 

008 F 

BD 

00D4 

ERS.PT 

JSR 


INTWO 

GET X AND Y 

205 

14 

0092 

FE 

0149 


LDX 


X.AND.Y 


206 

20 

0095 

F F 

01 3B 


STX 


EPX 


207 

23 

0098 

CE 

0139 


LDX 


U EP 



Microcomputing, October 1980 143 



208 

26 009B 

7E 

00B9 


JMP 


SEND 

209 

9 R* 009E 

BD 

00C8 

ERS.LN 

JSR 


INFOUR 

210 

14 00A1 

FE 

0147 


LDX 


U. AND.V 

211 

20 00A4 

FF 

0140 


STX 


ELU 

212 

25 00A7 

FE 

0149 


LDX 


X.AND.Y 

213 

31 00AA 

FF 

0142 


STX 


ELX 

214 

34 00 AD 

CE 

013E 


LDX 


#E L 

215 

37 00B0 

7E 

00B9 


JMP 


SEND 

216 




* 




217 

00B3 



CLEAR 

EQU 


* 

218 

3R 00B3 

CE 

012A 


LDX 


0CLRMSG 

219 

6 00B6 

7 E 

00B9 


JMP 


SEND 

220 




* 




221 

00B9 



SEND 

EQU 


★ 

222 

5 R 00B9 

A6 

00 


L D A 

A 

o,x 

223 

9 00BB 

08 



I NX 



224 

11 00BC 

81 

FF 


CMP 

A 

#X ' F F ' 

225 

15 00BE 

26 

03 (00C3) 


BNE 


$10 

226 

3 R 00C0 

7E 

0006 


JMP 


NEXTCMD 

227 

9R * 00C3 

BD 

El 01 

$10 

JSR 


0UTEEE 

228 

13 00 C 6 

20 

FI (00B9) 


BRA 


SEND 

229 




* 




230 

00C8 



INFOUR 

EQU 


* 

231 

9R* 0 0 C 8 

BD 

00E 1 


JSR 


GETDEC 

232 

14 00CB 

B7 

0147 


STA 

A 

U 

233 

23 * 00CE 

BD 

00E 1 


JSR 


GETDEC 

234 

28 00 D 1 

R 7 

0148 


STA 

A 

V 

235 

00 D 4 



INTW0 

EQU 


* 

236 

9R * 00D 4 

BD 

00E 1 


JSR 


GETDEC 

237 

14 00D7 

B 7 

0149 


STA 

A 

EX 

238 

23 * 00DA 

BD 

00E 1 


JSR 


GETDEC 

239 

28 00DD 

B 7 

01 4 A 


STA 

A 

Y 

240 

33 00E0 

3 9 



RTS 



241 




* 




242 

00E 1 



GETDEC 

EQU 


* 

243 

9R* 00E 1 

BD 

AD48 


JSR 


INDEC 

244 

15 00E4 

FF 

0145 


STX 


TEMP 

245 

19 00E7 

B6 

0146 


L D A 

A 

TEMP+1 

246 

24 00E A 

39 



RTS 




GET U, V , X, AND Y 


ERASE SCREEN 


SEND STRING AND LOOP TO 
NEXT COMMAND 
GET CHARACTER 

SPECIAL TERMINATOR? 

NO 


GET 4 DECIMAL NUMBERS U 

,V,X,Y 

U 


GET 2 DECIMAL NUMBERS X 
X 


RETURN VALUE IN A 

GET VALUE FROM LINE BUF 

FER 

SAVE 

GET L.O. BYTE 


248 

OOEB 

1 D 1 6 

SMSG 

CON 

DX ' 1 D 1 6 ' 

PUT IN GRAPHICS MODE 

249 

00 E D 

0000 


CON 

0,0 

KILL SOME TIME 

250 

OOEF 

1 E 1 8 


CON 

DX ' 1 E18' 

DISABLE SCROLLING 

251 

00F1 

04 


CON 

X ' 04 ' 


252 

OOF 2 

0B0015 

PROMPT 

CON 

X 'OB' ,DX ' 

0015' CURSOR POS 

253 

00 F 5 

16 


CON 

X ' 1 6 ' 

CLEAR TO END OF FRAME 

254 

00 F 6 

434F4D4D41 4E 


CON 

C 'COMMAND 

: ' , X ' 04 ' 

255 

00 FF 

0B0015 

I E MSG 

CON 

X ' OB ' , DX ’ 

0015' CURSOR POS 

256 

0102 

494E56414C49 


CON 

C ' INVALID 

INPUT - ' 

257 

0112 

52455455524E 


CON 

C 'RETURN 

TO CONTINUE* ,X'04' 

258 

0125 

1 C 1 1 

RESMSG 

CON 

DX ' 1 Cl 1 ' 

RESTORE FORMAT 1 

259 

0127 

1 E 08 


CON 

DX ' 1 E08 ' 

ENABLE SCROLL 

260 

01 29 

04 


CON 

X 

o 

■T' 


261 

01 2A 

1 C16 

CLRMSG 

CON 

D X ' 1 C 1 6 ' 

CLEAR TO BEGINNING OF F 







RAME 

262 

012C 

FF 


CON 

X' FF ' 


263 



* 




264 

01 2 D 

1 D 1 3 

DP 

CON 

DX ' 1 D1 3' 

DRAW PT. COMMAND 

265 

01 2 F 

0000 

DPX 

CON 

0,0 

X,Y 

266 

01 31 

FF 


CON 

X' FF' 


267 



* 




268 

01 32 

1 D 03 

DL 

CON 

D X ' 1 D03 ' 

DRAW LINE COMMAND 

269 

01 34 

0000 

DLU 

CON 

0,0 

u,v 

270 

0136 

0000 

DLX 

CON 

0,0 

X , Y 

271 

01 38 

FF 


CON 

X' FF' 


272 



★ 




273 

0139 

1 D 1 4 

EP 

CON 

DX ' 1 D1 4 ' 

ERASE PT. COMMAND 

274 

01 3B 

0000 

EPX 

CON 

0,0 

X , Y 

275 

01 3D 

FF 


CON 

X' FF ' 


276 



* 




277 

013E 

1 D04 

EL 

CON 

DX '1 D04' 

ERASE LINE COMMAND 

278 

0140 

0000 

ELU 

CON 

0,0 

U,V 

279 

0142 

0000 

ELX 

CON 

0,0 

X,Y 

280 

0144 

FF 


CON 

X' FF' 


281 



* 




282 

0145 


TEMP 

RMB 

2 


283 

0147 


U. AND . V 

EQU 

★ 


284 

01 47 


U 

RMB 

1 


285 

0148 


V 

RMB 

1 


286 

0149 


X.AND.Y 

EQU 

* 


287 

0149 


EX 

RMB 

1 


288 

014A 


Y 

RMB 

1 


289 



* 




290 

01 4B 


LAST 

ENT 



291 

014B 



END 

START 



AD36 

ADDBX 

66 


AD21 

CLASS 

59 


00B3 

CLEAR 

217 

159 

01 2A 

CLRMSG 

261 

218 

ADOO 

COLDS 

48 


0132 

DL 

268 

195 

0134 

DLU 

269 

192 

0136 

DLX 

270 

194 

AD4B 

DOCMND 

73 


01 2D 

DP 

264 

186 

01 2F 

DPX 

265 

185 

0055 

DRAW 

177 

162 

006 F 

DRAW . LN 

189 

181 

0060 

DRAW.PT 

183 

179 

013E 

EL 

277 

21 4 

0140 

ELU 

278 

211 

0142 

ELX 

279 

213 

01 39 

EP 

273 

207 

013B 

EPX 

274 

206 

0084 

ERASE 

198 

165 

009E 

ERS.LN 

209 

202 

008 F 

ERS.PT 

204 

200 



Photo 3. Sample run of TEST82. 


loop. 

Subroutine DRAW determines if the next 
character is an L or P. An L causes control 
to be transferred to DRAW.LN, which, in 
turn, calls INFOUR to get the coordinates 
and then draws a line. P causes control to 
be transferred to DRAW.PT, which calls IN- 
TWO to get the coordinates and then dis- 
plays the specified point. 

Note that the actual transmission of the 
control strings is performed by routine 
SEND. The Flex routine PSTRNG cannot be 
used because a control string could contain 
a hexadecimal 04, which acts as a string ter- 
minator. SEND uses a hexadecimal FF as 
the string terminator. 

Subroutine ERASE works just like DRAW 
except the clear control string is sent in- 
stead of the set control string. ERS.PT 
erases a point, and ERS.LN erases a line. To 
output the control string, all of these rou- 
tines use SEND, which transfers control 
back to NEXTCMD. 

Subroutine CLEAR sends an erase-to- 
the-beginning-of-frame command to the 
CT-82. This is sufficient, since the cursor is 
on the last line of the screen, which will be 
changed by NEXTCMD anyway. EXIT re- 
stores the CT-82 to screen format 1 (82 x 16 
with standard ROM), enables scrolling and 
returns control to Flex. 

Once I had a chance to play with TEST82 
and get a feel for the graphics potential of 
the CT-82, 1 decided it was time to interface 
these capabilities to BASIC. I could either 
write obscure subroutines in BASIC to send 
out the control strings or modify TEST82 to 
be callable from BASIC. I chose the latter 
approach because it would make the BASIC 
programs look more readable and be more 
efficient. Besides, some assembly lan- 
guage would be required anyway to handle 
the hexadecimal 04 control characters. List- 
ing 3, program BAS82, was the result. 

BAS82 

BAS82 differs from TEST82 in that it 
picks up its commands from the buffer 
pointed to by the contents of address 26 
(hex) and has an added command, IN, which 
initializes the CT-82 to graphics mode. Oth- 
erwise, the two routines are essentially the 


144 Microcomputing, October 1980 





CONTROLLER 

BOARD 


EXTENDER/LOGIC PROBE 


8 reed relay - OUTPUTS 
8 opto-isolated - INPUTS 
256 selectable port addresses 


New interlaced ground and signal 
traces, improves performance, reduces 
noise, with the new high clock frequency 
boards 

New brighter display, makes this very 
handy logic probe easier to use 
New proposed IEEE buss edge connec- 
tor label, with all the fine quality docu- 
mentation you expect with Mullen kits. 
High quality FR-4 board is double sided 
with plated thru holes and solder- 
masked for easy kit assembly 
Gold on all mating connector surfaces 
for better electrical contact 
Formed connector leads for easy scope 
probe attachment 

Jumper links in power lines makes cur- 
rent measurement and fusing easy 
Large "kluge" area lets you build and 
test your own circuits 

TB-4 EXTENOER/LOGIC PROBE 
$59. Kit $79. Assm/teated 


Our S- 100 CONTROLLER is used in laboratories, at universities, and in industry, in 
hundreds of applications, and may be the answer to your control problem. Complete 
programming and operating instructions included. 

For higher power applications a 500W CB . 1 CONTROLLER Kit $13 

AC POWER MODULE is available for $15. Aasm/tested $17 


The M-80 OCTOPORT is a simple to use interface for the 
TRS-80 COMPUTER. You can control 8 external 
devices and sense 8 external conditions. Each output 
uses a reed relay and each input an opto-isolator to 
electrically Isolate your TRS-80. 


One or more controllers can be connected to either 
the interface connector or the screen printer con- 
nector. 


CONTROL BOX 


>• 80 * 

ssory 


Each OCTOPORT is shipped completely 
assembled, tested and INCLUDES the inter- 
connector cable, a UL approved power pack, 
and a 1 year warranty. 


M-80 OCTOPORT CONTROLLER 
$159. Assm/tested 


Use your TRS-80, and our M-80 control box to program control energy savings 
devices at home or in your business. Send for our free application notes today 
•TRS-80 is a trademark of Tandy Radio Shack Corp 


KLUGE BOARD DESIGNED WITH YOUR PROTOTYPING PROBLEMS IN MIND. 

IQ PROTOTYPE BOARD 

• Full-sized FR-4 board with heat sink/mounting brackets, buss 
1 connectors and polarizing key 

• Designed for ease of external cable connection 

• All plated thru holes .042" on .1“ centers, power and ground 
traces 

HKB-1 H8 PROTOTYPE BOARD $30. Kit 


EXTENDER BOARD 


Our HTB-0 lets H8 owners troubleshoot 
their boards faster and easier. Each board 
can be extended above the computer for 
complete access to all circuits 
and components. 

FEATURES 

• Sturdy 3/32" board 
k • Molex 25-pin edge connectors 

NL with formed leads for easy 

jSL scope probe attachment 

* Jumper links in power lines 
makes current measurement 
M ■ and fusing easy 


HTB-0 H8 EXTENDER 
$39. Kit 


PROTOTYPE KIT ACCESSORIES: if you wish to buy any of these accessories for your kit, 
please list parts and add price to total order. These parts may be ordered at any time, but an 
additional SI .50 shipping and handling will be charged. . . if ordered separately. 


^37 MULLEN COMPUTER PRODUCTS 

BOX 6214, HAYWARD, CA 94544 

OR PHONE (415) 783-2866 • VISA/MASTERCHARGE ACCEPTED. 
INCLUDE $1 .50 FOR SHIPPING & HANDLING. 
CALIFORNIA RESIDENTS ADD TAX. 


PRICES: 


( 1 ) 44-pin edge/cable connector 

(1) 5 Volt regulator with (2) 39uF capacitors 

(1) 25-pin Molex connector (90° male) 

(1) ?F>-pin Mnlex connector (female) 



3355 \ 

i 

1 

I ■ 

x 


\ L~~. 


i/ 0 Reader Service index— page 241 


Microcomputing, October 1980 145 




DISK DRIVE/CRT 
SALE 


MPI (Demos) 

B51 

*200 

B52 

*275 


SA 801 R for RS MOD II *468 

Hazeltine 1000 (unused) *299 

Shugart SA 400 *279 

Pertec FD 2000 *279 FD250 *359 

SA 801 R w/PS/Cab *749 

16K Ram Chips (each) *4.50 


MTI 


3304 UJ. Mocflrthur Gtvd. 
Santa Ana, Cfi 92704 


(714) 979-9923 *^ 219 


<oduct versatility and value 


H IN NEW YORK CITY 

OHIO SCIENTIFIC & ARISTO/ 
POLKS FULL STOCK AND SER- 
VICE ON CHALLENGER MICRO- 
COMPUTERS. 

CHALLENGER Cl P8K $399.00 

Cl P 5” FLOPPY 20K $1250.00 

SUPERBOARD Cl P $299.00 

CHALLENGER (COLOR) C4P 8K $750.00 
C4P FLOPPY 24K 5" $1795.00 

CHALLENGER C8P $950.00 

COLOR-DUAL 8" FLOPPY C8P $2895.00 
C-3 48K DUAL FLOPPY 8" $4095.00 

C-3 + 23 MEG HARD DISK $12,995.00 
C-2-0EM 48K DUAL FLOPPY 8” $2799.00 
PLUS ALL SOFTWARE & PERIPHERALS 

Mail order invited if machine can be 
sent back to us for service. 220V 
conversions available for systems- 
write for quote. Write for free cata- 
log. M/C. VISA. AX CARDS ACCEPTED. 

Aristo/Polks • 212-279-9034 
314 5TH AVE.(32ST)N.Y.C.. N Y. 10001 
9 30/6-DAILY ■ THURS TIL 9 BSUNDAY 1 1 -5 

V IJ IU.IJI4I fJJ IIPJ-1 J yjJ-fl/ 



Z-80 USERS -would you like to use 
TRS-80* Software? Our assembled in- 
terface and complete documentation 
allow you to load and interface TRS-80* 
cassette programs. $30.00 


&COMPUPRISM? COLOR 

GRAPHICS FOR THE S-100 BUS. 16K OF ON BOARD 
MEMORY CAN BE USED AS RAM. 2 OR 4 MHz OPERA- 
TION. HIGH RESOLUTION (144 H. BY 192 V. PIXELS) 
WITH 16 COLORS AT THE SAME TIME. NO ADDRESS 
JUMPS MAKE PROGRAMMING EASY. SOCKETS FOR 
ALL I.C.'S. KIT $240. AANDT $280 

Bare board with documentation $45. 

ALL ORDERS SHIPPED COD WITHIN 72 HOURS. 4 MHz 
MOD FOR S.D. SYSTEMS. EXPANDORAM $10. 16 
CHANNEL A-D, 8 CHANNEL D-A FOR S-100 BUS, BARE 
BOARD WITH DOCUMENTATION $30. ^ 

J.E.S. GRAPHICS P.O. BOX 2752 
TULSA, OK. 74101 (918)742-7104 


0149 

EX 

287 

237 

000A 

FEXT.PRT 

135 

004C 

EXIT 

173 

168 

0006 

FEXT. SCR 

131 

AC00 

F2BACK 

8 


0004 

FEXT. SYS 

129 

A C29 

F2CC0L 

39 


0001 

FEXT .TXT 

126 

AC28 

F2C0MF 

38 


0000 

F L 2 1 0 

80 

A Cl 8 

F2CURC 

26 


0016 

FM2B0R 

99 

A C01 

F2DEL 

9 


0004 

FM2CLF 

84 

AC03 

F2DEPC 

11 


OOOC 

FM2DLF 

91 

A C07 

F2DX 

15 


0014 

FM2FND 

97 

A C08 

F2EJC 

16 


0007 

FM2GIR 

87 

AC2D 

F2ENV 

41 


0011 

FM2GRB 

95 

AC02 

F2E0L 

10 


000 F 

FM2NSS 

93 

A C 1 6 

F2ERR 

25 


0006 

FM20PD 

86 

A C 20 

F2ERRT 

32 


0001 

FM20PR 

81 

AC0A 

F2ESC 

18 


0003 

FM20PU 

83 

A840 

F2FCB 

43 


0002 

FM20PW 

82 

AC26 

F2FIA 

37 


0010 

FM20SI 

94 

AC2F 

F2FIEF 

42 


0008 

FM2PIR 

88 

AC24 

F2F0A 

36 


0015 

FM2P0S 

98 

AC23 

F2INSW 

35 


0012 

FM2PRB 

96 

A C 1 1 

F2LAST 

22 


oo od 

FM2RNF 

92 

A C 1 4 

F2LBP 

24 


0009 

FM2RSS 

89 

A080 

F2LBUF 

7 


0005 

FM2RWF 

85 

AC1B 

F2LDA0 

29 


000A 

FM2WSS 

90 

AC1 A 

F2LINE 

28 


B400 

FM IN IT 

74 

AC2B 

F2MEND 

40 


B406 

F MS 

76 

A C05 

F2NULL 

13 


B403 

FMSCLS 

75 

AC22 

F20TSW 

34 


A D 1 5 

GETCHR 

55 

AC09 

F2PAUS 

17 


00E1 

GETDEC 

242 

AC19 

F2PREC 

27 


AD2D 

G6TFIL 

63 

AC0E 

F2SDR 

21 


A D42 

GETHEX 

70 

AC0B 

F2SDRV 

19 


00FF 

IEMSG 

255 

A C21 

F2SI0F 

33 


A D 1 B 

INBUFF 

57 

A C 06 

F2TABC 

14 


A D09 

INCH 

51 

ACID 

F2TRAN 

30 


AD0C 

INCH2 

52 

AC1E 

F2TRNA 

31 


AD48 

INDE C 

72 

A 1 00 

F2UCA 

44 


00C8 

INF0UR 

230 

A C 1 2 

F2UCTA 

23 


0040 

INPERR 

169 

AC0C 

F2WDRV 

20 


00D4 

INTWO 

235 

A C04 

F2WIDC 

12 


01 4B 

LAST 

290 

0002 

FB2ACT 

105 


A D 30 

LOAD 

64 

0040 

FB2BUF 

122 


0006 

NEXT CMD 

144 

002 F 

FB2CDA 

119 


AD27 

NXTCH 

61 

001 E 

FB2CUR 

1 1 5 


AD45 

0UTADR 

71 

0003 

FB2DRV 

106 


AD0F 

0UTCH 

53 

001 3 

FB2EDA 

111 


ADI 2 

OUT C H 2 

54 

0001 

FB2ESB 

1 04 


A D 39 

0UTDEC 

67 

oooc 

FB2EXT 

108 


El D1 

0UTEEE 

140 

000 F 

FB2FAT 

109 


AD3C 

0UTHEX 

68 

0032 

FB2FDP 

120 


AD24 

PCRLF 

60 

001 C 

FB2FLP 

114 


00 F 2 

PROMPT 

252 

0000 

FB2FNC 

103 


ADI E 

PSTRNG 

58 

0022 

FB2INX 

116 


A D 1 8 

PUT CHR 

56 

0004 

FB2NAM 

107 


AD06 

RENTER 

50 

0024 

FB2NWB 

118 


01 25 

RESMSG 

258 

0023 

FB2RDX 

117 


AD3F 

RPTERR 

69 

003B 

FB2SCF 

121 


A D 2 A 

RSTRI0 

62 

0011 

FB2SDA 

110 


00B9 

SEND 

221 

0015 

FB2SIZ 

112 


AD33 

SETEXT 

65 

0017 

FB2SMI 

113 


00 EB 

SMSG 

248 

0008 

FEXT .BAC 

133 


0000 

START 

141 

0005 

FEXT.BAK 

130 


0145 

TEMP 

282 

0003 

FEXT. BAS 

128 


0147 

U 

284 

0000 

FEXT.BIN 

125 


0147 

U. AND.V 

283 

0002 

FEXT.CMD 

127 


0148 

V 

285 

0007 

FEXT.DAT 

132 


AD03 

WARMS 

49 

0009 

FEXT .DIR 

134 


01 49 

X . AND . Y 

286 

000B 

FEXT. OUT 

136 


01 4 A 

Y 

288 


231 233 236 238 


169 

146 171 


243 

190 209 

149 167 182 203 

183 204 


172 226 

147 151 153 


227 


144 

143 145 1 70 174 


187 196 208 215 219 228 

1 42 
291 

244 245 

232 

191 210 

234 
1 75 

184 193 205 212 


Listing 2. Dummy program that shows all the Flex entry equates and their values. 


1 

2 

0000 

* :0. FLEXEQU 

NAM 
1. INC 

DUMMY 

- FOR LIST OF FLEXEQU. I 
NC 

3 

A080 

F2LBUF 

EQU 

X ' A080 ' 

LINE BUFFER 

4 

AC00 

F2BACK 

EQU 

X* ACOO' 

BACKSPACE CHARACTER 

5 

AC01 

F2DEL 

EQU 

X • AC01 ' 

DELETE CHARACTER 

6 

AC02 

F2E0L 

EQU 

X' AC02' 

END OF LINE CHAR. 

7 

AC03 

F2DEPC 

EQU 

X ' AC03' 

PAGE DEPTH COUNT 

8 

AC 04 

F2WIDC 

EQU 

X' AC04' 

WIDTH COUNT 

9 

AC05 

F 2 NULL 

EQU 

X* AC05' 

NULL COUNT 

10 

AC06 

F2TABC 

EQU 

X' AC06' 

TAB CHARACTER 

11 

A C07 

F2DX 

EQU 

X ' AC07' 

DUPLEX MODE 

12 

A C08 

F2EJC 

EQU 

X ' A C08 ' 

EJECT COUNT 

13 

A C09 

F2PAUS 

EQU 

X' AC09' 

PAUSE CONTROL 

14 

AC0A 

F2ESC 

EQU 

X ' ACOA' 

ESCAPE CHARACTER 

1 5 

AC0B 

F2SDRV 

EQU 

X ' ACOB' 

SYSTEM DRIVE NUMBER 

16 

A C0C 

F2WDRV 

EQU 

X ' A CO C 1 

WORKING DRIVE 

17 

ACOE 

F2SDR 

EQU 

X ' ACOE ' 

3 BYTE DATE REGISTER 

18 

AC 1 1 

F2LAST 

EQU 

X ' AC1 1 ' 

LAST TERMINATOR 

19 

AC1 2 

F2UCTA 

EQU 

X' AC12' 

USER COMMAND TABLE ADDR 
ESS 

20 

AC 1 4 

F2LBP 

EQU 

X ' AC1 4 1 

LINE BUFFER POINTER 

21 

A C 1 6 

F2ERR 

EQU 

X' AC16' 

ESCAPE RETURN REGISTER 

22 

A Cl 8 

F2CURC 

EQU 

X' AC18* 

CURRENT CHARACTER 

23 

A C 1 9 

F2PREC 

EQU 

X* AC19* 

PREVIOUS CHARACTER 

24 

A C 1 A 

F2LINE 

EQU 

X ' A C 1 A ' 

CURRENT LINE NUMBER 

25 

A C 1 B 

F2LDA0 

EQU 

X 1 A C 1 B ' 

LOADER ADDRESS OFFSET 

26 

AC1 D 

F2TRAN 

EQU 

X ' A C 1 D ' 

TRANSFER FLAG 

27 

AC1E 

F2TRNA 

EQU 

X'ACIE' 

TRANSFER ADDRESS 

28 

A C2 0 

F2ERRT 

EQU 

X ' AC20 ' 

ERROR TYPE 

29 

AC21 

F2SI0F 

EQU 

X’ AC21 ' 

SPCIAL I/O FLAG 

30 

AC22 

F20TSW 

EQU 

X ' AC22 ' 

OUTPUT SWITCH 

31 

A C2 3 

F2INSU 

EQU 

X ' AC23* 

INPUT SWITCH 


146 Microcomputing, October 1980 



3 2 

33 

34 

35 

36 

37 

38 

39 

40 

41 

42 

43 

44 

45 

46 

47 

48 

49 

50 

51 

52 
33 

54 

55 
36 

57 

58 

59 

60 
61 
6 2 
65 

64 

65 

66 

67 

68 

69 

70 

71 

72 

73 

74 

75 

76 

77 

78 

79 

80 
81 
82 

83 

84 

85 

86 

87 

88 

89 

90 

91 

92 


93 

94 

95 

96 

97 

98 

99 
100 
101 
102 
103 
1 04 
1 05 
106 

107 

108 

109 

110 
111 
1 1 2 

113 

114 

115 

116 

117 

118 

119 

120 
121 
1 22 
1 23 
1 24 

125 

126 

127 

128 

129 

130 

131 

132 

133 

134 


AC24 

F2F0A 

EQU 

X ' AC24 1 

FILE OUTPUT ADDRESS 

AC26 

F2 F I A 

EQU 

X' AC26' 

FILE INPUT ADDRESS 

A C 2 8 

F2C0MF 

EQU 

X’ AC28' 

COMMAND FLAG 

A C29 

F2CC0L 

EQU 

X* AC29' 

CURRENT OUTPUT COLUMN 

AC2B 

F2MEND 

EQU 

X ' A C2B ' 

MEMORY END 

AC2D 

F2ENV 

EQU 

X ' AC2D ' 

ERROR NAME VECTOR 

AC2F 

F2FIEF 

EQU 

X ' A C2 F ' 

FILE INPUT ECHO FLAG 

A840 

F2FCB 

EQU 

X • A840 ' 

SYSTEM FCB 

A100 

F2UCA 

EQU 

X' A100' 

UTILITY COMMAND AREA 


* FLEX SUBROUTINES 


AD00 

COLDS 

EQU 

X ' ADOO ' 

COLDSTART ENTRY 

AD03 

WARMS 

EQU 

X' AD03' 

WARM START ENTRY 

A DO 6 

RENTER 

EQU 

X’ AD06' 

MAIN LOOP RE-ENTRY 

A D09 

INCH 

EQU 

X ' AD09 ' 

INPUT CHAR 

adoc 

INCH2 

EQU 

X 'ADOC ' 

INPUT CHAR 

AD0F 

0UTCH 

EQU 

X' ADOF ' 

OUTPUT CHAR 

ADI 2 

0UTCH2 

EQU 

X ' ADI 2 ' 

OUTPUT CHAR 

ADIS 

GETCHR 

EQU 

X ' A D 1 5 ' 

PREFERRED GET CHAR 

A D 1 8 

PUT CHR 

EQU 

X ' A D 1 8 ' 

preferred PUT CHAR 

ADI B 

INBUFF 

EQU 

X'ADIB' 

INPUT TO LINE BUFFER 

ADI E 

PSTRNG 

EQU 

X ' AD1E ' 

PRINT STRING 

A D 2 1 

CLASS 

EQU 

X ’ AD21 ' 

CLASSIFY CHARACTER 

AD24 

PCRLF 

EQU 

X ' AD24 ' 

PRINT C R , LF 

AD27 

NXTCH 

EQU 

X' AD27' 

NEXT CHARACTER 

A D 2 A 

RSTRI0 

EQU 

X ' AD2 A ' 

RESTORE I/O VECTORS 

AD2D 

GETFIL 

EQU 

X ' AD2D ' 

PARSE FILE SPEC. 

AD30 

LOAD 

EQU 

X ' AD30 ' 

FILE LOADER 

A D 33 

SETEXT 

EQU 

X' AD33' 

SET EXTENSION 

A D 36 

ADDBX 

EQU 

X' AD36* 

ADD ACC-B TO X 

A D 39 

0UTDEC 

EQU 

X 1 AD39 ' 

OUTPUT DECIMAL NUMBER 

AD3C 

0UTHEX 

EQU 

X ' AD3C ' 

OUTPUT HEX CHARACTER 

A D 3 F 

RPTERR 

EQU 

X ' AD3F ' 

REPORT ERROR 

AD42 

GETHEX 

EQU 

X ' AD42 ' 

GET HEX NUMBER 

AD45 

0UTADR 

EQU 

X ' AD45 ' 

OUTPUT HEX ADDRESS 

AD48 

INDEC 

EQU 

X ' AD48 ' 

INPUT DECIMAL NUMBER 

AD4B 

D0CMND 

EQU 

X 1 A D4B ' 

CALL DOS 

B 400 

FMINIT 

EQU 

X ' B400 ' 

FMS INITIALIZATION 

B403 

FMSCLS 

EQU 

X ' B403 ' 

FMS CLOSE 

B406 

FMS 

EQU 

X 'B406' 

FMS CALL 


* FMS COMMANDS 



0000 

FL2I0 

EQU 

X'O' 

READ/WRITE NEXT BYTE 

0001 

FM20PR 

EQU 

X • 1 • 

OPEN FOR READ 

0002 

FM20PW 

EQU 

X '2 ' 

OPEN FOR WRITE 

0003 

FM20PU 

EQU 

X '3' 

OPEN FOR UPDATE 

0004 

F M2 CL F 

EQU 

X '4 ' 

CLOSE FILE 

0005 

FM2RWF 

EQU 

X 1 5 ' 

REWIND FILE 

0006 

FM20PD 

EQU 

X '6' 

OPEN DIRECTORY 

0007 

FM2GIR 

EQU 

X 1 7 ' 

GET INFORMATION RECORD 

0008 

FM2PIR 

EQU 

X ' 8 ' 

PUT INFORMATION RECORD 

0009 

FM2RSS 

EQU 

X '9 ' 

READ SINGLE SECTOR 

000A 

FM2WSS 

EQU 

X ' A • 

WRITE SINGLE SECTOR 

oooc 

FM2DLF 

EQU 

X'C' 

DELETE FILE 

00 0 D 

FM2RNF 

EQU 

X ' D ' 

RENAME FILE 

000 F 

F M2 NS S 

EQU 

X ' F ' 

NEXT SEQUENTIAL SECTOR 

0010 

FM20SI 

EQU 

X'10' 

OPEN SYSTEM INFORMATION 





RECORD 

0011 

FM2GRB 

EQU 

X '1 1 ' 

GET RANDOM BYTE FROM SE 
CTOR 

0012 

FM2PRB 

EQU 

X 1 1 2 ' 

PUT RANDOM BYTE IN SECT 
OR 

0014 

FM2FND 

EQU 

X ' 1 4 ' 

FIND NEXT DRIVE 

0015 

FM2P0S 

EQU 

X * 1 5 ' 

POSITION BY RECORD 

0016 

FM2B0R 

EQU 

X ' 1 6 1 

BACKUP 1 RECORD 


* FILE CONTROL 

BLOCK SPECIFICATIONS 

0000 

FB2FNC 

EQU 

0 

FMS COMMAND 

0001 

FB2ESB 

EQU 

1 

ERROR STATUS 

0002 

FB2ACT 

EQU 

2 

ACTIVITY STATUS 

0003 

FB2DRV 

EQU 

3 

DRIVE NUMBER 

0004 

FB2NAM 

EQU 

4 

FILE NAME (8 BYTES) 

OOOC 

FB2EXT 

EQU 

12 

EXTENSION (3 BYTES) 

000 F 

FB2FAT 

EQU 

15 

FILE ATTRIBUTES 

0011 

FB2SDA 

EQU 

17 

STARTING DISK ADDRESS 

0013 

FB2EDA 

EQU 

19 

ENDING DISK ADDRESS 

0015 

FB2SIZ 

EQU 

21 

FILE SIZE 

0017 

FB2SMI 

EQU 

23 

FILE SECTOR MAP INDICAT 
OR 

001 C 

FB2FLP 

EQU 

28 

FCB LIST POINTER 

001 E 

FB2CUR 

EQU 

30 

CURRENT POSITION 

0022 

FB2INX 

EQU 

34 

DATA INDEX 

0023 

FB2RDX 

EQU 

35 

RANDOM INDEX 

0024 

FB2NWB 

EQU 

36 

NAME WORK BUFFER 

002 F 

FB2CDA 

EQU 

47 

CURRENT DIRECTORY ADDRE 
SS 

0032 

FB2FDP 

EQU 

50 

FIRST DELETED DIRECTORY 





POINTER 

003 B 

FB2SCF 

EQU 

59 

SPACE COMPRESSION FLAG 

0040 

FB2BUF 

EQU 

64 

SECTOR BUFFER 


* FILE EXTENSIONS 


0000 

FEXT .BIN 

EQU 

0 


0001 

FEXT.TXT 

EQU 

1 


0002 

FEXT . CMD 

EQU 

2 


0003 

FEXT. BAS 

EQU 

3 


0004 

FEXT. SYS 

EQU 

4 


0005 

FEXT .BAK 

EQU 

5 


0006 

FEXT .SCR 

EQU 

6 


0007 

FEXT . DAT 

EQU 

7 


0008 

FEXT . BAC 

EQU 

8 


0009 

FEXT .DIR 

EQU 

9 


000A 

FEXT .PRT 

EQU 

10 


000B 

FEXT .OUT 

EQU 

1 1 


0000 


END 





SUPERBRAIN 


32K or 64K (Double or Quad Density units 
available). Uses two Z-80 CPU's. Commercial- 
type terminal with 12" monitor. Dual double 
density minifloppies. Over 350 kilobytes of 
storage (twice that with quad density drives). 
Two serial RS232 ports, I/O ports standard. 
Expandable with optional S-100 S-100 inter- 
face. Comes with CP/M™ 2.2 operating sys- 
tem. MiniMicroMart includes BASIC inter- 
preter and can supply a wide range of CP/M 
Development and Application software. 

w/32K Double Density, List $2995 . $2685 

w/64K Double Density, List $3345 $2883 

w/64K Quad Density, List $3995 $3595 

64K Special Quad Version $3395 


INTERSYSTEMS 

formerly ITHACA AUDIO 



DPS-1, List $1795 

LIMITED TIME $1299* 


The new Series II CPU Board features a 4 MHz 
Z-80A CPU and a full-feature front panel. 20- 
slot actively terminated motherboard, with 25 
amp power supply (50/60 Hz operation, incl. 
68 cfm fan). 

COMPLETE SYSTEM with InterSystem 64K 
RAM, I/O Board w/priority interrupt and 
double density disk controller board. Full 1-year 
warranty. List $3595 

ONLY 

Above less disk controller, $3195 $2539* 

* Limited Time offer expires Sept. 15, 1980. 


$ 2895 * 


HEWLETT-PACKARD 

HP-85 A 


Desk-Top 

Computer 



Call 

for 

Price! 


F.O.B. shipping point. All prices subject to change and all 
offers subject to withdrawal without notice. Advertised prices 
are for prepaid orders. Credit card and C.O.D. 2% higher. 
C.O.D. may require deposit. 

- WRITE FOR FREE CATALOG - ^ 304 


1618 James Street 
Syracuse, NY 13203 (315) 422-4467 


iS Reader Service index— page 241 


Microcomputing, October 1980 147 



same. I load BAS82 at address C800, where 
I have some free memory. The program 
must be loaded somewhere that BASIC 
doesn’t know about so it isn’t wiped out. 

Next, I wrote a set of subroutines in BA- 
SIC that called the different functions in 
BAS82. These subroutines appear in lines 
9000 through 9630 in Listings 4, 5 and 6. 
Lines 9000 through 9070 comprise the ini- 
tialization subroutine. They call the system 
loader to load BAS82, set the BAS82 entry 
point in the location BASIC uses for the ad- 
dress of the USR function, call BAS82 with a 
parameter value of “IN” and turn off the cur- 
sor display. 

Lines 9100 through 9140 draw a point. 
Note that X is the column coordinate with 
valid values from 0 to 183. Y is the row coor- 
dinate with valid values from 0 to 65. 

The draw-line subroutine in lines 9200 
through 9240 uses variables U and V as the 
column and row coordinates of one end of 
the line, and variables X and Y as the col- 
umn and row coordinates of the other end. 
Again, BAS82 is called to transmit the ap- 
propriate control string to the CT-82. 

The clear subroutine in lines 9300 
through 9340 sends a clear screen com- 
mand. The exit subroutine in lines 9400 
through 9450 restores the CT-82 to non- 
graphics mode and turns on the cursor. 

The erase line subroutine in lines 9500 
through 9540 and the erase point subrou- 
tine in lines 9600 through 9630 work the 
same as their equivalent draw subroutines. 

Using these subroutines, I wrote three 
BASIC programs. The first, Random Draw/ 
Erase Line (Listing 4), generates coordi- 
nates randomly, draws a line, generates an- 
other set of random coordinates, erases a 
line and then repeats this loop the specified 
number of times. Although this is much 
more interesting to watch when it is running 
than after it has stopped, Photo 4 shows 
how it appears. 

Listing 5 shows a more practical program 
that draws a sine curve (see Photo 5). It 
essentially uses the equation Y = SIN(X). 
Lines 310 and 320 look strange but they 
handle the scaling for the screen dimen- 
sions; lower values of Y will cause the curve 
to move up on the screen. Also, line 420 
positions the cursor and labels the graph. 

The third program (Listing 6) generates a 
bar graph (see Photo 6). This graph shows 
the frequency distribution of the function 
x = RND(0)*20 for 600 trials. In other words, 
it shows how random the random number 
generator is by trying it 600 times and 
graphically displaying the result. The bar- 
graphing technique is useful in displaying 
data for easy comparison. 

This is currently where I am in exploring 
the capabilities of the CT-82. Using the 
basic concepts presented in this article, 
you will be able to discover even more. ■ 


Listing 3. BAS82. 


1 


0000 




NAM 


BAS82 


2 





* CT82-I 

BASIC GRAPHICS INTERFACE 

3 





* SSC 8 

-16-79 VI . 

.7 


137 


0000 




OPT 


PNT,XRF 


138 





★ 





139 


El D1 



0UTEEE 

EQU 


X ' E 1 D 1 ' 

USED FOR FUNNY CHARACTE 










RS 

140 


0026 



PASS 

EQU 


X ' 26 ' 

ADDRESS PASSED BY BASIC 

141 





* 





142 


0000 



BAS. 82 

ENT 




143 

4R 

0000 

DE 

26 


LDX 


PASS 

DESCRIPTOR ADDRESS 

144 

10 

0002 

EE 

00 


LDX 


0,X 

STRING ADDRESS (PACKET) 

145 

16 

0004 

FF 

0134 


STX 


PKTADR 

SAVE 

146 

21 

0007 

E6 

00 


LDA 

B 

0 / x 

GET 

147 

26 

0009 

A6 

01 


L D A 

A 

1 ,x 

FUNCTION 

148 





* 





149 

28 

000B 

Cl 

49 


CMP 

B 

#CT 

INITIALIZE? 

150 

32 

00 0D 

26 

07 (0016) 


BNE 


$5 


151 

2R 

000 F 

81 

4E 


CMP 

A 

# C ' N 1 


152 

6 

0011 

26 

03 (0016) 


BNE 


$5 


153 

3 R 

001 3 

7E 

00B7 


JMP 


IN IT 

YES - INITIALIZE CT82 

154 


0016 



$ 5 

NUL 




155 

2 R 

0016 

Cl 

43 


CMP 

B 

#C' C ' 

CLEAR? 

156 

6 

0018 

26 

07 (0021) 


BNE 


$8 


157 

2 R 

001 A 

81 

53 


CMP 

A 

#C'S’ 

CS - CLEAR SCREEN ? 

158 

6 

001 C 

26 

03 (0021) 


BNE 


$8 


159 

3R 

001 E 

7E 

00B1 


JMP 


CLEAR 


160 

2R 

0021 

Cl 

44 

$8 

CMP 

B 

nz ’ D ' 

DRAW? 

1 61 

6 

0023 

26 

03 (0028) 


BNE 


$10 

NO 

162 

3R 

0025 

7E 

0053 


JMP 


DRAW 


163 

2 R 

0028 

Cl 

45 

$10 

CMP 

B 

#C ' E ' 

ERASE? 

164 

6 

002A 

26 

03 ( 002 F ) 


BNE 


$12 

NO 

165 

3R 

002 C 

7E 

0082 


JMP 


ERASE 


166 

2R 

002 F 

Cl 

58 

$12 

CMP 

B 

# ex' 

EXIT? 

167 

6 

0031 

26 

03 (0036) 


BNE 


INPERR 


168 

3R 

0033 

7E 

0040 


J MP 


EXIT 


169 

3R 

0036 

CE 

00E 0 

INPERR 

LDX 


# I E MSG 


170 

12 * 

0039 

B0 

00 B 0 


JSR 


SEND 

ERROR MESSAGE 

171 

21 * 

003 C 

Bt) 

A 0 1 B 


JSR 


INBUFF 

WAIT FOR CR 

172 

26 

003 F 

39 



RTS 




173 

3 R 

0040 

CE 

0113 

EXIT 

LOX 


# RE S MSG . 

,1 RESET CT-82 

174 

12 * 

0043 

B0 

00BD 


JSR 


SEND 


175 

1 5 

0046 

CE 

FFFF 


LDX 


#X 'FFFF' 

WAIT A WHILE 

176 

4 R 

0049 

09 


$5 

OEX 




177 

8 

004 A 

26 

FD (0049) 


BNE 


$5 


1 78 

3R 

004 C 

CE 

0116 


LDX 


# RE SMSG . 

,2 RESTORE SCROLLING 

179 

12 * 

004 F 

B0 

00BD 


JSR 


SEND 


180 

17 

0052 

3 9 



RTS 



RETURN TO BASIC 

181 





* 





182 


0053 



DRAW 

EQU 


* 

DRAW POINT OR LINE 

183 

2R 

0053 

81 

50 


CMP 

A 

#C'P' 


184 

6 

0055 

27 

07 (005E) 


BEQ 


DRAW.PT 


185 

2 R 

0057 

81 

4C 


CMP 

A 

#C'L' 


186 

6 

0059 

27 

12 (0060) 


BEQ 


DRAW.LN 


187 

3R 

005 B 

7E 

0036 


JMP 


INPERR 

INPUT ERROR 

188 

9R* 

005E 

BD 

0008 

ORAW.PT 

JSR 


INTWO 

GET X AND Y 

189 

1 4 

0061 

FE 

013A 


LDX 


X . AND . Y 

GET X AND Y 

190 

20 

0064 

FF 

01 1 E 


STX 


DPX 

SAVE IN STRING 

191 

23 

0067 

CE 

011 C 


LDX 


#DP 


192 

26 

006A 

7E 

00BD 


JMP 


SEND 

SEND IT 

193 





* 





194 


006 D 



DRAU.LN 

EQU 


* 


195 

9R * 

006D 

BD 

00 CB 


JSR 


INFOUR 

GET U, V , X, AND Y 

196 

1 4 

0070 

FE 

0138 


LDX 


U . AND .V 


197 

20 

0073 

FF 

0123 


STX 


DLU 


198 

25 

0076 

FE 

01 3 A 


LDX 


X . AND . Y 


199 

31 

0079 

FF 

0125 


STX 


DLX 


200 

34 

007 C 

CE 

01 21 


LDX 


#DL 


201 

37 

00 7 F 

7E 

00BD 


JMP 


SEND 


202 





* 





203 


0082 



ERASE 

EQU 


* 

ERASE LINE OR POINT 

204 

2 R 

0082 

81 

50 


CMP 

A 

#C'P' 

POINT? 

205 

6 

0084 

27 

07 (0080) 


BEQ 


ERS.PT 

YES 

206 

2 R 

0086 

81 

4C 


CMP 

A 

#C'L' 

LINE? 

207 

6 

0088 

27 

12 (0090 


BEQ 


ERS.LN 

YES 

208 

3 R 

008A 

7E 

0036 


JMP 


INPERR 

ERROR 

209 

9R* 

0080 

BD 

0008 

ERS.PT 

JSR 


INTWO 

GET X AND Y 

210 

1 4 

0090 

FE 

013A 


LDX 


X . AND . Y 


211 

20 

0093 

FF 

01 2 A 


STX 


EPX 


21 2 

23 

0096 

CE 

01 28 


LDX 


#EP 


213 

26 

0099 

7E 

OOBD 


JMP 


SEND 


214 

9R* 

009C 

BD 

00CB 

ERS.LN 

JSR 


INFOUR 

GET U, V / X, AND Y 

215 

1 4 

009 F 

FE 

0138 


LDX 


U. AND.V 


216 

20 

00A2 

FF 

01 2F 


STX 


ELU 


217 

25 

00A5 

FE 

013A 


LDX 


X . AND . Y 


218 

31 

00A8 

FF 

0131 


STX 


ELX 


219 

34 

00 AB 

CE 

0120 


LDX 


#EL 


220 

37 

00 AE 

7E 

OOBD 


JMP 


SEND 


221 





* 





222 


00B1 



CLEAR 

EQU 


* 

ERASE SCREEN 

223 

3R 

00B 1 

CE 

0119 


LDX 


tt CLRMSG 


224 

6 

00B4 

7E 

00B0 


JMP 


SEND 


22 5 





* 





226 


00B7 



I N IT 

EQU 


★ 

INITIALIZE CT-82 

227 

3R 

00B7 

CE 

00E6 


LDX 


#SMSG 


228 

6 

00BA 

7E 

OOBD 


JMP 


SEND 


229 





* 





230 


00BD 



SEND 

EQU 


if 

SEND STRING AND LOOP TO 










NEXT COMMAND 

231 

5 R 

00 B 0 

A6 

00 


LDA 

A 

o,x 

GET CHARACTER 

232 

9 

00BF 

08 



I NX 




233 

11 

ooco 

81 

FF 


CMP 

A 

#X ' FF ' 

SPECIAL TERMINATOR? 

234 

15 

00 C 2 

26 

01 (00C5) 


BNE 


$10 

NO 

235 

20 

OOC4 

39 



RTS 





148 Microcomputing, October 1980 


Designed for industry...priced for the home. 



video lOO 

The video 100 computer moni- 
tors are ideal for all your personal 
and business needs. These highly 
reliable 12" black and white moni- 
tors feature a 12 MHz band width 
and 80 character by 24 line display. 
Plug-in compatability with Apple, 
Atari, Radio Shack, O.S.I., Micro- 
Term and Exidy make these the 
perfect text display for almost any 
system. 

Sturdy, lightweight plastic cabinet 

UNDER $170.00 


video IOO-bo 

The model 80 features an indus- 
trial grade metal cabinet with built- 
in disk mounting capability and 
space for an 11” x 14" PC board for 
custom designed electronics. 

The solid state circuitry assures 
a sharp, stable, and trouble-free 
picture. The front panel controls 
include power, contrast, horizon- 
tal hold, vertical hold, and bright- 
ness. Adjustments for size, video 
level, and width are located on the 
rear panel. 

Rugged metal cabinet with disk 
space 

UNDER $200.00 


VIDEO 100 AND VIDEO 100-80 SPECIFICATIONS 

12" diagonal measure display • Convenient front panel controls • Video bandwidth 12MHz ±3 DB 

• Input impedance 75 Ohms • 80 character by 24 line display • 90° deflection picture tube 

• Video 100-80 provides mounting space for mini floppy disk. 

• Resolution— Over 700 lines at center horizontally— over 350 lines at center vertically 


LEEDEX CORPORATION 

2420 East Oakton • Suite E • Arlington Heights, III. 60005 (312) 364-1180 • TLX: 25-4786 

Dealer discount available 


^59 


iS Reader Service index— page 241 


Microcomputing, October 1980 149 




68 MICRO 
JOURNAL™ 

* The only ALL 68XX Com- 
puter Magazine. 

Foreign Orders— Add: 

Air Mail $30.00 /Year Surface $ 12.00 /Year 
1-Year $18.50 2 Years $32.50 
3 Years $48.50 

OK, PLEASE ENTER MY 
SUBSCRIPTION 
Bill my: M/C □ — VISA n 

Card # 

Expiration Date 

For □ 1-Yr. □ 2 Yrs. □ 3 Yrs. 

Enclosed: $ 

Name 

Street 

City 

State Zip 

‘68’ MICRO JOURNAL™ 
3018 Hamill Road . 132 
HIXSON, TN 37343 


OHIO SCIENTIFIC 


DUNGEONS - A fantasy adventure 
for OSI. You can be a fighter, dwarf, 
halfling, elf, or magic-user in a 
search for gold in the unexplored 
dungeons beneath the Wizard’s city 
or in the forest that surrounds the 
city. Evil monsters lurk in the forest 
and dungeons to guard the gold 
that was placed there long ago by 
the Wizard. Everything is graphi- 
cally displayed for the Cl , 2, 4, and 
8P. 

Price is $12.95 for cassette and 
$15.95 for 5!/4” or 8” disk. Requires 
8K. Send $1 for complete hardware 
and software catalog, includes a 
free game listing. 


236 

9R* 

00C5 

BD E 1 D 1 

S10 

237 

13 

00 C 8 

20 F 3 (00BD) 


238 

18 

00CA 

39 


239 




* 

240 


00CB 


INF0UR 

241 

5 R 

00 C B 

FE 0134 


242 

10 

00CE 

A6 04 


243 

15 

00D0 

B7 0138 


244 

20 

0003 

A6 05 


245 

25 

00D5 

B7 0139 


246 


00 D 8 


INTWO 

247 

5 R 

00D 8 

FE 0134 


248 

10 

00 D B 

A6 02 


249 

15 

00DD 

B7 01 3 A 


250 

20 

00E0 

A6 03 


251 

25 

00E2 

B7 013B 


252 

30 

00E 5 

39 


253 




* 

254 




* 

255 


00E6 

1 D 1 6 

SMSG 

256 


00E8 

0000 


257 


00 E A 

1 E 1 8 


258 


00EC 

FF 


259 


OOED 

0B0015 

IEMSG 

260 


00 F0 

494E5641 4C49 


261 


0100 

5245545552 4E 


262 


0113 

1C1 1 

RESMSG.1 

263 


0115 

FF 


264 


0116 

1 E08 

RESMSG.2 

265 


011 8 

FF 


266 


0119 

101 6 

CLRMSG 

267 


01 IB 

FF 


268 




* 

269 


011 C 

1013 

DP 

270 


01 1 E 

0000 

DPX 

271 


0120 

FF 


272 




* 

273 


0121 

1 DO 3 

DL 

274 


01 23 

0000 

DLU 

275 


0125 

0000 

DLX 

276 


0127 

FF 


277 




* 

278 


01 28 

1 D 1 4 

EP 

279 


01 2 A 

0000 

EPX 

280 


012C 

FF 


281 




* 

282 


01 2D 

1D04 

EL 

283 


01 2F 

0000 

ELU 

284 


0131 

0000 

ELX 

285 


0133 

FF 


286 




* 

287 


0134 


PKTADR 

288 


0136 


TEMP 

289 


01 38 


U. AND.V 

290 


01 38 


U 

291 


0139 


V 

292 


01 3A 


X.AND.Y 

293 


01 3 A 


EX 

294 


01 3B 


Y 

295 




* 

296 


01 3C 


LAST 

297 


013C 




JSR 


OUTEEE 

SEND 

IT 

BRA 


SEND 



RTS 





EQU 


* 

GET 

4 DECIMAL NUMBER 




,v,x 

,Y 

LDX 


PKTADR 

GET 

PACKET ADDRESS 

LD A 

A 

4,X 

GET 

U 

STA 

A 

U 



LD A 

A 

5,X 

GET 

V 

STA 

A 

V 



EQU 


* 

GET 

2 DECIMAL NUMBER 




/ Y 


LDX 


PKTADR 

GET 

PACKET ADDRESS 

L D A 

A 

2,X 

GET 

X 

STA 

A 

EX 



LDA 

A 

3 , X 

GET 

Y 

STA 

A 

Y 



RTS 






CON 

DX • 1 D16 ’ 

PUT IN GRAPHICS MODE 

CON 

0,0 

KILL SOME TIME 

CON 

D X 1 1 E 1 8 ' 

DISABLE SCROLLING 

CON 

X * FF * 


CON 

X 1 OB' , D X 

'0015' CURSOR POS 

CON 

C ' INVALI 

D INPUT - ' 

CON 

C ' RETURN 

TO CONTINUE ' ,X' FF ' 

CON 

DX'ICII ' 

RESTORE FORMAT 1 

CON 

X ' FF ' 


CON 

DX ' 1 E08 1 

ENABLE SCROLL 

CON 

X' FF' 


CON 

D X ' 1 01 6 1 

CLEAR SCREEN 

CON 

X ' FF ' 


CON 

DX ' 1 D1 3' 

DRAW PT. COMMAND 

CON 

0,0 

X , Y 

CON 

X ' FF ' 


CON 

DX ' 1 D03 ' 

DRAW LINE COMMAND 

CON 

0,0 

u,v 

CON 

0,0 

X , Y 

CON 

X' FF' 


CON 

D X ' 1 D 1 4 ' 

ERASE PT. COMMAND 

CON 

0,0 

X , Y 

CON 

X ' FF ' 


CON 

DX ' 1 D04 ' 

ERASE LINE COMMAND 

CON 

0,0 

u,v 

CON 

0,0 

X , Y 

CON 

X ' FF ' 


R MB 

2 

PACKET ADDRESS SAVE 

RMB 

2 


EQU 

* 


RMB 

1 


RMB 

1 


EQU 

* 


RMB 

1 


RMB 

ENT 

END 

1 



Aurora Software Associates 

353 South 1 00 East#6 ^193 ) 


Springville, Utah 84663 


.GET, Paid 
for using your 
Computer e ®» 


FUN' Eas'f 

RUSH COUPON FOR ^ 
FREE FACTS 

GP^SPARETIME 

Send today to DAR M10B 
31 10 Fulton Ave.. Sacramento CA 95821 ^ 136 


#0 




Photo 4. Sample output of random draw/erase line program . 


Listing 4. Random draw/erase line program. 


10 REM RANDOM DRAW/ERASE LINE 

100 G0SUB 9000 

200 G0SUB 9300 

220 GOTO 1000 

250 FOR 1=1 TO L 

300 U=RND<0)*100 

310 V=RND(0) *60 

320 X=RND(0>*100 

330 Y = RND (0) *60 

400 G0SUB 9200 : REM DRAW A LINE 
500 U=RND (0 ) *1 00 
510 V=RND(0) *60 

529 X=RND(0)*100 

530 Y=RND(0)*60 


150 Microcomputing, October 1980 



REM ERASE A LINE 


550 GOSUB 9500 : 

900 NEXT I 
1000 PRINT CHRS ( 1 1 );CHR$(0);CHR$(21); 

1010 PRINT CHR$ (6 ) : REM ERASE TO EOL 
1020 INPUT "ENTER LOOP COUNT";L 
1040 IF L>0 THEN 250 
1060 GOSUB 9400 
1100 END 

9000 REM INITIALIZE CT-82 GOSUB 
9010 EXEC, "GET 1.BAS82.BIN" 

9020 POKE HEX("24") ,HEX("C8") :POKE HE X ( "25 " ) , HE X ( "00" ) 
9030 ZZS=" IN" 

9040 Z=USR(PTR(ZZ$) ) 

9050 PRINT CHRS(30);CHRS(21 ) :REM TURN OFF CURSOR 
9060 RETURN 
9070 REM *** 

9100 REM DRAW POINT (X,Y) GOSUB 
9110 ZZS="DP"+CHR$(X)+CHR$(Y) 

9120 Z = USR ( PTR C ZZ$ ) ) 

9130 RETURN 
9140 REM *** 

9200 REM DRAW LINE (U,V,X,Y) GOSUB 

9210 ZZS="DL"+CHRS(U)+CHRS(V)+CHR$(X)+CHR$(Y) 

9220 Z=USR(PTR(ZZ$) ) 

9230 RETURN 
9240 REM ** 

9300 REM CLEAR GOSUB 
9310 ZZS="CS" 

9320 Z=USR(PTR(ZZS) ) 

9330 RETURN 
9340 REM *** 

9400 REM EXIT GOSUB 
9410 ZZS="X" 

9420 Z = USR(PTR(ZZ$) ) 

9430 PRINT CHRS (30) ; CHRS (5 ) 

9440 RETURN 
9450 REM *** 

9500 REM ERASE LINE (U,V,X,Y) GOSUB 

9510 ZZS="EL"+CHR$(U)+CHR$(V)+CHR$(X)+CHR$(Y) 

9520 Z=USR(PTR(ZZ$) ) 

9530 RETURN 
9540 REM *** 

9600 REM ERASE POINT (X,Y) GOSUB 
9610 ZZS="EP"+CHRS(X)+CHRS(Y> 

9620 Z=USR(PTR(ZZS) ) 

9630 RETURN 



Photo 5. Sample output from sine curve program. 


Listing 5. Draw sine curve program. 

10 REM DRAW SINE CURVE 
100 GOSUB 9000 

300 FOR 1=0 TO 2*P I STEP .05 
310 X=20* I 

320 Y=30*(1-SIN(I) )+1 
350 GOSUB 9100 
400 NEXT I 

420 PRINT CHR$(11 ); CHRSC25); CHR$(21 ) ; " Y=S IN (X > "; 

500 INPUT #0 , AS 
600 GOSUB 9400 
700 END 

9000 REM INITIALIZE CT-82 GOSUB 
9010 EXEC, "GET 1.BAS82.BIN" 

9020 POKE HEX("24") ,HEX ("C8") :POKE HE X ( "2 5 " ) ,HE X ( "00" ) 
9030 Z Z$ = " IN" 

9040 Z=USR(PTR(ZZS) ) 

9050 PRINT CHRS (30); CHRS (21 ): REM TURN OFF CURSOR 
9060 RETURN 
9070 REM *** 

9100 REM DRAW POINT (X,Y) GOSUB 
9110 ZZS="DP"+CHR$(X)+CHRS(Y) 

9120 Z=USR(PTR(ZZS) ) 

9130 RETURN 
9140 REM *** 

9200 REM DRAW LINE (U,V,X,Y) GOSUB 

9210 ZZ$="DL"+CHRS(U)+CHRS(V)+CHRS(X)+CHRS(Y) 

9220 Z=USR(PTR(ZZS) ) 

9230 RETURN 
9240 REM ** 

9300 REM CLEAR GOSUB 
9310 ZZ$="CS" 

9320 Z=USR(PTR(ZZ$)) 


Now-Break Through The 64K 
Micro-Memory Limit! 


SIXTEEN 


Bank Selectable 16K Static RAM 



SAVE $50.QO 
LIMITED TIME OFFER 

Don't buy any more antique RAMs (RAM without 
bank select) — now there's Netronic's new 
SWEET SIXTEEN board featuring a universal soft- 
ware bank select system. SWEET SIXTEEN is 
capable of addressing 2,048 different banks. 
With SWEET SIXTEEN boards you can add mem- 
ory beyond the 64K limit, or expand to a multi- 
terminal system. 

LOOK AT THESE FEATURES: 


• 300 NS, low power 21 14's. 

• Software Bank Selector — Universal decoder 
works with Cromenco, Alpha Micro, Netronics. most 
other systems, or your design. Onboard dip 
switches: Bank Select Enable, Reset Enable.- Reset 
Disable, Port Address,- Port Data. 

• All Inputs And Outputs meet the proposed IEEE 
standards for the S- 100 bus. 

• 4.0 MHz Operation. 

• Schmitt Trigger Buffer on all signals for maximum 
noise immunity. 

• Addressable On 16k Boundaries, 0-64k. dip 
switch selectable. 

• Phantom Option, dip switch selectable. 

• PWR/MWRITE Option, dip switch selectable. 

• LED Indicator to display status. 

• Glass Epoxy PC Board with gold-plated contacts 
and double-sided solder mask. 

• Fully Socketed. 

• Four Separate Regulators for maximum stability. 


10- Day Money- Back Policy For Wired & Tested 

Unit. Try a fully wired board — then either keep it. 
return it for kit, or simply return it in working condi- 

,IOn ‘ Continental U.S.A. Credit Card Buyers 
Outside Connecticut: ■■■■■■■■■■■■( 

CALL TOLL FREE: 
800-243-7428 j 

From Connecticut Or For Assistance 

(203) 354 9375 

Please send the items checked below: 

□ SWEET SIXTEEN kit. No. S-16 (reg. price | 
$249.95) now $199.95* 

□ SWEET SIXTEEN, fully assembled, tested, ; 

burned in; No. S-16W . (reg. price $289.95) ■ 

now $239.95* ; 

*Plus $2 postage & insurance. Connecticut residents • 
add sales tax. 

Total Enclosed: $ j 

□ Personal Check □ Money Order/Cashier's Check ■ 

□ VISA □ Master Charge (Bank No. ) j 

Acct. No. Exp. Date ■ 

Signature ! 

Print ■ 

Name ! 

■ 

Address J 

City ; 

State Zip ! 

IShNETRONICS i 

RESEARCH & DEVELOPMENT, LTD. KB- io | 
333 Litchfield Rd.. New Milford, CT 06776 


Reader Service index — page 241 


Microcomputing , October 1980 151 



If you’re serious 
about the stock market, 
you need 

Tickertec" 



Watch 48 to 400 of your favorite 
stocks without a 1 5 minute delay. 

Tickertec™ is a computer program that dis- 
plays the NYSE or AMEX tickertape on your 
TRS-80™ Model I or both exchanges as an 
option on the Model II. You see every trade 
as it is reported by the exchange and track 
the last ten trades, tickertape reported 
volume, and high and low limits on the 
stocks you are watching. Tickertec pro- 
gram prices start at $1,000.00 with many 
optional features available including hard 
copy and portfolio management systems. 
Programs may be purchased for cash (i.e., 
hard dollars) or payment can be arranged 
in the form of discounted brokerage com- 
missions (i.e.. Soft Dollar Software™). Ex- 
change fees are extra. Call for FREE bro- 
chure TOLL-FREE at (800) 223-6642; in New 
York call (212) 687-0705; or circle the 
reader service number 

MaxUle& ^ 171 

Company Inc. 

6 East 43rd Street, N.Y., N.Y. 10017 


PRINTER MECHANISM 



Made by Binder Magnete for U.S. assembled 180 CPS 
bidirectional matrix printer, 0-132 and 0-158 columns. 
Includes single platen, ribbon drive, paper guides, 
motors, belts, etc. In 26"Wx8y2"Hx20"D beige case 
with cast aluminum bottom. Add your own control/ 
interface electronics and print heads and make it 

operational. 75 lbs. sh. #MPM/M12 $125. 

PRINT STAND for above, chocolate brown 
steel with 24"x13" top support. Space behind foot 
panel for storage. 0/A 24"Wx25y2"Hx2TD; 38 lbs. 
Shipped via truck or bus. #PSD/M12 $25. 

DATANETICS KEYBOARD 

75 keys, ASCII encoded. +5 and -12 VDC required. 
Keyboard assembled with unassembled case, 
PCB cable, pinouts. 20x7 3 /4x2 3 /t, 10 lbs. sh. 
#0284-819-10 $89.95 

CONTROLLER CPU, directed mechanical 
functions of above 
mechanism. Has P8085 
MPU with 5.7143 Mhz 
crystal. 2/8255A, 8253, 
8212, 4/8205, 9/3341 
FIFO, 4/2111-1 RAM, 7400, 
3/74LS00, 74LS125, 

74LS161 . Sockets tor 6/2708’s. Requires +12, 

-12, +5, & -5 VDC. #217-244 $100. 

Send for our FREE New SURPLUS CATALOG Today! 

Address Dept. K • VISA, MASTERCARD Accepted. 
Prices F.O.B. Lima, 0. * Orders over 50 lbs. fgt. coll. 
Electronic Surplus Since 1947 Phone 419/227-6573 


FAIR RADIO SALES 

1016 E. EUREKA • Box 1105 • LIMA, OHIO - 45802 



9330 RETURN 
9340 REM *** 

9400 REM EXIT G0SUB 
9410 ZZS="X" 

9420 Z=USR(PTR(ZZ$) ) 

9430 PRINT CHRS(30); CHRSC5) 

9440 RETURN 
9450 REM *** 

9500 REM ERASE LINE (U,V,X,Y) G0SUB 

9510 ZZS="EL"+CHRS(U)+CHRS(V)+CHRS(X)+CHRS(Y) 

9520 Z=USR(PTR(ZZ$) ) 

9530 RETURN 
9540 REM *** 

9600 REM ERASE POINT (X,Y) GOSUB 
9610 ZZ$="EP"+CHR$(X)+CHR$(Y) 

9620 Z=USR(PTR(ZZS) ) 

9630 RETURN 



Photo 6. Output sample from bar graph program. 


10 REM BAR GRAPH OF RANDOM NUMBER DISTRIBUTION 
90 DIM V ( 20 ) 

100 GOSUB 9000 
200 FOR 1=1 TO 600 
210 X=KND(0)*20 
220 V(X)=V(X)+1 
230 NEXT I 
300 V = 5 0 

310 FOR 1=0 TO 20 
320 X =6* I 
330 Y=50-V(I> 

340 U=X 

350 GOSUB 9200 
360 NEXT I 

400 PRINT CHR$(11);CHRS(0);CHR$(18); 

410 PRINT "0 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 16 17 18 19 20" 

420 PRINT 

430 PRINT "DISTRIBUTION OF 600 RANDOM NUMBERS BETWEEN 0 AND 20" 

500 INPUT #0,AS 
600 GOSUB 9400 
610 END 

9000 REM INITIALIZE CT-82 GOSUB 
9010 EXEC, "GET 1.BAS82.BIN" 

9020 POKE HEXC'24") ,HEX("C8") :P0KE HEX ("25") , HEX ("00") 

9030 Z Z$ = " IN" 

9040 Z=USR(PTR(ZZ$) ) 

9050 PRINT CHR$(30); CHR$(21 ) : REM TURN OFF CURSOR 
9060 RETURN 
9070 REM *** 

9100 REM DRAW POINT (X,Y) GOSUB 
9110 ZZS="DP"+CHRS(X)+CHR$(Y) 

9120 Z=USR(PTR(ZZS)) 

9130 RETURN 
9140 REM *** 

9200 REM DRAW LINE (U,V,X,Y) GOSUB 

9210 ZZS="DL"+CHRS(U)+CHR$(V)+CHR$(X)+CHRS(Y) 

9220 Z=USR(PTR(ZZS)) 

9230 RETURN 
9240 REM ** 

9300 REM CLEAR GOSUB 
9310 ZZS="CS" 

9320 Z=USR(PTR(ZZ$)) 

9330 RETURN 
9340 REM *** 

9400 REM EXIT GOSUB 
9410 ZZS="X" 

9420 Z=USR (PTR ( ZZ$) ) 

9430 PRINT CHR$(30);CHRS(5) 

9440 RETURN 
9450 REM *** 

9500 REM ERASE LINE (U,V,X,Y) GOSUB 

9510 ZZ$="EL"+CHRS(U)+CHRS(V)+CHR$(X)+CHR$(Y) 

9520 Z=USR (PTR (ZZS) ) 

9530 RETURN 
9540 REM *** 

9600 REM ERASE POINT (X,Y) GOSUB 
9610 ZZ$="EP"+CHRS(X)+CHRS(Y) 

9620 Z=USR (PTR ( ZZ*> ) 

9630 RETURN 


Listing 6. Bar graph of random number distribution program. 


152 Microcomputing, October 1980 




NEW! TPM* for TRS-80 Model II 
NEW! System/6 Package 

Computer Design Labs 


Z 80 Disk software 


We have acquired the rights to all TDL software (& hardware). TDL software has long had the reputation of being the best in the 
industry. Computer Design Labs will continue to maintain, evolve and add to this superior line of quality software. 

— Carl Galletti and Roger Amidon, owners. 

Software with Manual/Manual Alone 


All of the software below is available on any of the 
following media for operation with a Z80 CPU using 
the CP/M* or similar type disk operating system 
(such as our own TPM*). 

for TRS-80* CP/M (Model I or II) 
for 8” CP/M (soft sectored single density) 
for 5y« M CP/M (soft sectored single density) 
for S 1 /*” North Star CP/M (single density) 
for S 1 /*” North Star CP/M (double density) 

BASIC I 

A powerful and fast Z80 Basic interpreter with EDIT, 
RENUMBER, TRACE, PRINT USING, assembly language 
subroutine CALL, LOADGO for “chaining”, COPY to 
move text, EXCHANGE, KILL, LINE INPUT, error inter- 
cept, sequential file handling in both ASCII and binary 
formats, and much, much more. It runs in a little over 1 2 
K. An excellent choice for games since the precision 
was limited to 7 digits in order to make it one of the 
fastest around. $49.95/$15. 

BASIC II 

Basic I but with 1 2 digit precision to make its power 
available to the business world with only a slight sacrifice 
in speed. Still runs faster than most other Basics (even 
those with much less precision). $99.95/$15. 

BUSINESS BASIC 

The most powerful Basic for business applications. It 
adds to Basic II with random or sequential disk files in 
either fixed or variable record lengths, simultaneous 
access to multiple disk files, PRIVACY command to 
prohibit user access to source code, global editing, 
added math functions, and disk file maintenance capa- 
bility without leaving Basic (list, rename, or delete). 
$1 79.95/$25. 


ZEDIT 

A character oriented text editor with 26 commands 
and “macro" capabilityforstringing multiple commands 
together. Included are a complete array of character 
move, add, delete, and display function. $49.95./$15. 

ZTEL 

Z80 Text Editing Language - Not just a text editor. 
Actually a language which allows you to edit text and 
also write, save, and recall programs which manipulate 
text. Commands include conditional branching, subrou- 
tine calls, iteration, block move, expression evaluation, 
and much more. Contains 36 value registers and 1 0 text 
registers. Be creative! Manipulate text with commands 
you write using Ztel. $79.95/$25. 

TOP 

A Z80 Text Output Processor which will do text 
formatting for manuals, documents, and other word 
processing jobs. Works with any text editor. Does 
justification, page numbering and headings, spacing, 
centering, and much more! $79.95/325. 

MACRO I 

A macro assembler which will generate relocateable 
or absolute code for the 8080 or Z80 using standard 
Intel mnemonics plusTDL/Z80 extensions. Functions 
include 1 4 conditionals, 1 6 listing controls, 54 pseudo- 
ops, 1 1 arithmetic/logical operations, local and global 
symbols, chaining files, linking capability with optional 
linker, and recursive/reiterative macros. This assembler 
is so powerful you’ll think it is doing all the work for you. It 
actually makes assembly language programming much 
less of an effort and more creative. $79.95/320. 

MACRO II 

Expands upon Macro Fs linking capability (which is 
useful but somewhat limited) thereby being able to take 
full advantage of the optional Linker. Also a time and 
date function has been added and the listing capability 
improved. $99.95/$25. 

LINKER 

How many times have you written the same subro j.ine 
in each new program? Top notch professional pro- 
grammers compile a library of these subroutines and 
use a Linker to tie them together at assembly time. 
Development time is thus drastically reduced and 
becomes comparable to writing in a high leve' language 
but with all the speed of assembly language. So, get the 
newCDL Linker and start writing programs in a fraction 
of the time it took before. Linker is compatible with 
Macro I & 1 1 as well as TDL/Xitan assemblers version 2.0 
or later. $79.95/$20. 


DEBUG I 

Many programmers give up on writing in assembly 
language even though they know their programs would 
be faster and more powerful. To them assembly language 
seems difficult to understand and follow, as well as 
being a nightmare to debug. Well, not with proper tools 
like Debug I. With Debug I you can easily follow the flow 
of any Z80 or 8080 program. Trace the program one 
step at a time or 1 0 steps or whatever you like. At each 
step you will be able to seethe instruction executed and 
what it did. If desired, modifications can then be made 
before continuing. It’s all under your control. You can 
even skip displaying a subroutine call and up to seven 
breakpointscan be set during execution. Use of Debug I 
can pay for itself many times overby savi ng you val uable 
debugging time. $79.95/$20. 

DEBUG II 

This is an expanded debugger which has all of the 
features of Debug I plus many more. You can “trap” (i.e. 
trace a program until a set of register, flag, and/or 
memory conditions occur). Also, instructions may be 
entered and executed immediately. This makes it easy 
to learn new instructions by examining registers/memory 
before and after. And a RADIX function allows changing 
between ASCII, binary, decimal, hex, octal, signed 
decimal, or split octal. All these features and more add 
up to give you a very powerful development tool. Both 
Debug I and II must run on a Z80 but will debug both Z80 
and 8080 code. $99.95/$20. 

ZAPPLE 

A Z80 executive and debug monitor. Capable of 
search, ASCII put and display, read and write to 1/0 
ports, hex math, breakpoint, execute, move, fill, display, 
read and write in Intel or binary format tape, and more! 
on disk 

APPLE 

8080 version of Zapple 


NEW! TPM now available for TRS-80 Model 
II! 

TPM* 

A NEW Z80 disk operation system! This is not CP/M*. 
It’s better! You can still run any program which runs with 
CP/M* but unlike CP/M* this operating system was 
written specifically for the Z80* and takesfull advantage 
of its extra powerful instruction set. In other words its 
not warmed over 8080 code! Available for TRS-80* 
(Model I or II). Tarbell, Xitan DDDC, SD Sales “VERSA- 
FLOPPY", North Star (SD&DD), and Digital (Micro) 
Systems. $79.95/$25. 

SYSTEM MONITOR BOARD (SMB II) 

A complete 1/0 board forS-1 00 systems. 2 serial ports, 
2 parallel ports, 1200/2400 baud cassette tape inter- 
face, sockets for2K of RAM, 3-2708/271 6 EPROM’s or 
ROM, jump on reset circuitry. Bare board $49.95/$20. 

ROM FOR SMB II 

2KX8 masked ROM of Zapple monitor. Includes source 
listing $34.95/$15. 

PAYROLL (source code only) 

The Osborne package. Requires C Basic 2. 

5” disks $124.95 (manual not included) 

8” disks $ 99.95 (manual not included) 

Manual $20.00 

ACCOUNTS PAYABLE/RECEIVABLE 
(source code only) 

By Osborne, Requires C Basic 2 
5” disks $124.95 (manual not included) 

8” $99.95 (manual not included) 

Manual $20.00 

GENERAL LEDGER (source code only) 

By Osborne. Requires C Basic 2 
5” disks $99.95 (manual not included) 

8" disks $99.95 (manual not included) 

Manual $20.00 


SYSTEM/6 

TPM with utilities, Basic I interpreter, Basic E compiler, 
Macro I assembler, Debug I debugger, and ZEDIT text 
editor. 

Above purchased separately costs $339.75 
Special introductory offer Only $1 79.75 with coupon!! 



ORDERING INFORMATION 

Visa, Master Charge and C.O.D. O.K. To order call or 
write with the following information. 

1 . Name of Product (e.g. Macro I) 

2. Media (e.g. 8” CP/M) 

3. Price and method of payment (e.g. C.O.D.) include 
credit card info, if applicable. 

4. Name, Address and Phone number. 

5. ForTPM orders only: Indicate if forTRS 80, Tarbell, 
Xitan DDDC, SD Sales (5V4” or 8”). ICOM (5V4” or 
8"), North Star (single or double density) or Digital 
(Micro) Systems. 

6. N.J. residents add 5% sales tax. 

Manual cost applicable against price of subsequent 
software purchase in any item except for the Osborne 
software. 

For information and tech queries call 

609-599-2146 

For phone orders ONLY call toll free 

1-800-327-9191 
Ext. 676 

(Except Florida) 

OEMS 

Many CDL products are available for licensing to 
OEMs. Write to Carl Galletti with your requirements. 

* Z80 is a trademark of Zilog 

* TRS-80 is a trademark for Radio Shack 

* TPM is a trademark of Computer Design Labs. It is not 
CP/M* 

* CP/M is a trademark of Digital Research 

Prices and specifications subject to change without 
notice. 

DEALER INQUIRIES INVITED. 



C BASIC 2 

Required for Osborne software. $99.95/$20. 



COMPUTER 
DESIGN 
LABS 


is - 18 


342 Columbus Avenue 
Trenton, N.J. 08629 


iS Reader Service index— page 241 


Microcomputing, October 1980 153 



Tracking Down 
The Bus 


Answers the question of why some boards 
won’t work with your S-IOO system. 


Richard A. Rodman 
c/o Envo, Inc. 

800 Follin Lane 
Vienna, VA 22180 


T he S-IOO bus has one intrin- 
sic characteristic: it’s based 
on the timing signals of the 8080 
microprocessor. Thus, to adapt 
bus, the signals generated by 
the 8080 have to be simulat- 
ed by the Z-80 CPU circuit de- 


sign. 

This is not easy. The Z-80 re- 
quires only a single clock and 
generates much more elegant 
control signals, while the 8080 
requires a two-phase clock with 
12-volt swings. 

Engineers have found that the 
simplest way to simulate the 
two-phase clock on the bus is to 
use the 8224 clock generator 
chip. While the engineers at 
Cromemco did not follow this 
route, Ithaca Intersystems did; 


theirs is the most popular Z-80 
CPU board in use. 

Many boards, however, do not 
work with this CPU, even in its 
latest version. The problem is 
related to the S-100 interface 
logic, and the phase of clock 2 
and clock 1 to the PSYNC signal. 
The 8080 CPU generates PSYNC 
on the leading edge of clock 2. 
Clock 2 makes one high-to-low 
transition during PSYNC, and 
clock 1 makes a low-to-high 
transition. 

Peripheral boards use these 
relative characteristics in a 
number of ways. 

Dynamic memory boards use 
the high-to-low transition of 
clock 2 during PSYNC to latch in 
the address, which is stabte at 
the time. Examples of this type 
are the Processor Technology 
16KRA and 32KRA memory 
boards. 

Other boards, such as the 
Solid State Music VB1 and many 
static memory boards, use the 
low-to-high transition of clock 1 
for the same purpose. 

Finally, some boards will use 


TOP EDGE OF BOARD 



Fig. 3. Bottom of board modifi- 
cation. 


the falling edge of clock 2 and 
the rising edge of PSYNC to tog- 
gle circuitry for the generation 
of wait states. These include the 
Screensplitter and Alpha Micro 
AM-200 floppy-disk controller. 

Why will some of these 
boards work as is, others poorly 
and most not at all? 

Fig. 1 shows the circuitry 
used by Ithaca Intersystems to 
generate PSYNC. The 02TTL 
output of the 8224 is used to 
operate the Z-80 clock, whereas 
the standard outputs 01 and 02, 
powered from a 5-volt supply, are 
buffered onto the bus. Note also 
that the Z-80 output/MREQ (not 
memory request) drives a 74121 
monostable to generate the 
PSYNC pulse on its falling edge. 

A timing diagram of these 
signals is given in Fig. 2. Since 
the Z-80 outputs / MREQ low on 
the falling edge of the clock ap- 
plied to it, that PSYNC will make 
its low-to-high transition on the 
falling edge of 02, rather than 
the rising edge. This means that 
while 01 will make its required 
transition, 02 will not make a 
high-to-low transition during 
PSYNC. 

Since the Z-80 doesn’t use 01, 
simply invert 02TTL before it 
gets to the Z-80, so that /MREQ 
will make PSYNC occur at the 
right time. 

I wrote Ithaca about this prob- 
lem, but they weren’t interested, 
so you’ll have to modify your 
own board. Refer to Fig. 3 for 
details. All mods are done on the 
solder side of the board. 

1. Remove R6 (330 Q orange- 
orange-brown) carefully and 
save it. 

2. Cut the third trace from the 
top on the solder side, right near 
U12 where it makes an angle 
(see Fig. 3). 

3. With U12 at the top, con- 
nect the side on the right to U12, 
pin 5. 

4. Connect the left side (going 
to the CPU) to pin 6. The wires 
should criss-cross. As with all 
PCB mods, use #30 Kynar wire- 
wrapping wire or equivalent. 

5. Connect R6 between pin 14 
and pin 6 of U12. 

This completes the modifica- 
tion, and all of the boards men- 
tioned above should operate 
correctly. ■ 



— n__n__n_ 


J L 



CLOCKS PUT OUT BY 8224 
CLOCK GENERATOR 1C. 


RESULTING SIGNALS GENERATED 
BY Z-80 IN UNMODIFIED 
ITHACA INTERSYSTEMS CIRCUIT 


SIGNALS GENERATED BY Z-80 
> AS A RESULT Or MODIFICATIONS 
DESCRIBED IN THIS ARTICLE. 


Fig. 2. 

154 Microcomputing, October 1980 


To our customers. 

Every month our prices prove to be the 
rival of the entire industry. Of course our 
competetion will boast that they will meet 
or beat our price, but before you believe 
that ask these questions: Will they allow a 
2% discount starting with the order that 
makes your total business with them exceed 
$1000.00? Will they allow an additional 3% 
whenever you send a check instead of using 
a credit card? Will they pay the shipping 
on all orders over $100.00? 

These are company policies that we 
adhere to. No one forced us to do it just 
because their advertised prices were lower 
than ours! It is simply the way we do our 
business every day. Go ahead and call our 
competetion. Then call us to place your 
order. Join our family of satisfied friends 
today. Our phone is answered 24 hours per 
day for your convienence. 


800 COMPUTER SYSTEM $780.00 

400 COMPUTER SYSTEM $440.00 

850 INTERFACE MODULE. ... $171. 22 

810 DISK DRIVE $540.00 

820 PRINTER $450.00 

8K RAM $ 93.75 

16K RAM $148.55 

SPECIAL AW * n ' 

STAR RAIDERS $ 43.20 

BY THE TIME THAT THIS GOES 
WE WILL HAVE THE NEW HOBBY 
BY MATTEL. CALL FOR PRICES 
NEW INTELLIVISION. RESERVE 
CHRISTMAS NOW. 

ANALYTICAL SYSTEMS ^319 
p q box 3 

OAK RIDGE, TN. 37830 
(615) 691-3772 


A 


ATARI 


TO PRESS 
COMPUTER 
ON THE 
ONE FOR 


Texas Instruments TI-99 4 
Home Computer. 

Designed to be the first 
true home computer 
— for skilled 
computer users 
or for beginners. 


»S CofTifximk Q 


99/4 CONSOLE $808.00 

COLOR MONITOR $402.00 

SPEECH SYN $134.58 

RS-232 $194.06 

DISK CONTROLLER. .. .$258.75 

DISK DRIVE $431.25 

PRINTER $334.65 

MODEM $194.06 


WE ALSO CARRY A FULL LINE OF SOFTWARE 
FOR TI AND ATARI AT VERY ATTRACTIVE 
PRICES. WRITE OR CALL FOR SPECIFICS. 
BE SURE TO WRITE FOR OUR NEW CATALOG 
NOW BIGGER THAN EVER! 


E-< HJI1IH3 
Z C Q> O 

H • «0 V >i 

a: u o to 

p« • w o M 

04 CJ 4J o 

06 >itJ 

3 ^ c -h a) 

o 3 <8 > H >1 

Jm o O 3 'O 

>i 10 M W 

06 H CL, 0) • 

O W <U <D U <-* 

h 3EHJ0 •• XS 

Hj »H ' — I - ( U 

cn >o o -h — 

w c ? a» tj -p <u 

> a> a> > <1) <8 

h in x: a> -h <y o 

Eh 4J 3 -P C -P o 
< 4J -H C 

O w •O «fl 3 -h in 
w 30C00P -h 

z biw « a>ift « 



Don Lancaster's "Cheap Video ’’concept allows almost 
unlimited options, including: 

* Scrolling- Full performance cursor. 

* Line/Character formats of 16/32, 24/80, 32/64 

or almost anything. 

* Graphics -up to 256 X 256 B&W; 96 X 128 COLOR 

C requires low-cost option modules) 

* Works with 6502 , 6800 and other micros. 

SPECIAL OFFER: Buy the Kit (uppercase alpha- 
numeric option included ) & get the Book at 1/2 price. 
i ELECTRONICS, 1020 W. WILSHIRE BLVD. OKLAHOMA CITY. OK 73116 


I’m Sold, PLEASE RUSH C ) SEND FREE CATALOG 

( ) TVT-6 5/8 Kit & Cheap Video Cookbook $42.95 1 06 

C 3 TVT-6 5/8 Kit only Cbook required for assembly) -$39.95 

name: 

address: 

city: 


. state: 


ELECTMMCS. Dept. 10K 1«2f WRSHItE UVD., OKLAHOMA CITY. OK 73116 


theULTIMATE in 
CHEAP VIDEO 


BOOK & KIT 
ONLY $42 95 



MICROPROCESSOR KIT 



CPU Board can be expanded into a stand 
alone microcomputer system or used by 
itself as a dedicated controller for OEM 
applications. Includes a complete step-by- 
step instruction manual on 8085 operation 
and architecture. 8085 based CPU board is 
expandable with IK eprom, IK read/write 
memory, one serial port and three program- 
mable parallel ports. 44 pin CPU edge con- 
nector can be configured for any buss 
structure. Area on CPU board for custom 
wirewrap design of user defined interface circuitry. $249.95 Per Kit 

$299.95 Assembled 


8085A COOKBOOK Basic concepts, system control, memory systems and 
types, interfacing, 8085A— family-compatible chips. You design several completely 
operational 8085A-based microcomputers. n c . 21447 $10.50 

8080/8085 SOFTWARE DESIGN A detailed approach to assembly language 
programming for 8080 or 8085-based computers. Including complete, tested 
programs. No 21541 $9.50 

TRS-80 INTERFACING Use basic language to control external devices and 
sense external events. Level II basic and 4K available memory required. 

No. 21633 $8.95 


_ m 

ENCLOSED IS $ 

14905 NE 40TH, DEPT. K10 ^ ™ JSm 

JJy REDMOND, WA 98052 (206 883-9200) 

Add $2.50 postage and handling. IMB 

FOR EACH: 

□ KIT □ COOKBOOK 

□ SOFTWARE DESIGN □ TRS-80 INTERFACING 

NAME 


ADDRESS 

CITY, STATE, ZIP 

CARD NO. 

EXP. 


SIGNATURE 

SEND FOR OUR FREE 8-PAGE CATALOG □ VISA □ MSTCD 


CUD ERST WJCflD '86 PH (219) 293-4316/ 10 8 EST / For C.O.D. INFORMATION 

TERMINALS/ ADDS 20. ...$799/25. ...$849/ HAZELTINE 141 0....S74S, i 500....S949/ 1510.. ..$1049/ 1520. ...$1295 

TERMINALS/ HEATH ZENITH WH-19....$849/ PERKINS ELMER....S729/ INF0T0N 100 . ..$849/ MICRO TERM ACT5....S749 . 
TERMINALS/ LEAR SIEGLER ADM-1A....S1359/ ADM-3.(assm.)....$799/ ADM-31....S1 159/ LOWER CASE-NUM. PAD. (avail) 

. SYSTEMS/ PASCAL MICROENGINE (board). ...$1549/ CAB. 8 PWSUPP... $2295/ PASCAL PLUS (2 drives)... .$2995. 
.SYSTEMS/ HEATH-ZENITH WH 89 ( 1 6K ) ... $ 1 899/ CR0MEMC0 SYS-3 (64K, 1.2M dr.!....S5349/ Z2D-W (assm.)....$1839 

SYSTEM/ NORTHSTAR H0Z. 1(32K 0D) . .$2895/ H0R. K16K DD) ...$2400/ SWTC 6809(56K)....$1695 

PRINTERS/ TEXAS INSTRUMENTS 810. ...$1529/ 820K0 S1959/ DIABLO 1640. .. $2779/ 1650. ...$2995 

PRINTERS/ NEC 5510 . ..$2499/ 5520K0....S2895/ 5530P ...$2499/ HEATH ZENITH WH 14 ...$779 

PRINTERS/ CENTRONICS 730 ...$775/ 799 2 $995/ 702. .. $1725/ COMPRINT 9 12GP . $499/ 912S... $529 

.SUPPORT/ SEATTLE COMPUTER PR0D.O6K memory plus 250ns static).... $279/ CENTRONICS RIBBONS/ NEC RIBBONS 
SUPPORT/ NEC THIMBLES/ PRINTER STANDS/ CRT WORK STATIONS/ CIRCUIT MANUALS/ RS 232 C0NNNECT0RS. 
SUPPORT/ T D M. Disckettes 8" (TRS Mod. 2) Box 10.. . $4 5/ 8” SS Box 10. ...$35/ 5V' SS Box 10.. $35 

/■ l.\/>/./\(, I rcixht Collcit rOORDI R Cert t\r*malCk COD !'.<) Hn\ 67/, HRISInl , l\ 



nm O f\ PARALLEL I/O 
1 1 1-OU FOR TI IE TRS-80 

As featured in 80 Microcomputing , September 1980 issue. 

The PPI-80 is a complete parallel I/O interface designed specifically for the 
TRS-80, consisting of 3 complete 8 bit I/O ports including such features as: 

* switch selectable address decoding 

* complete on board regulated power supply 

* TTL compatible I/O lines conveniently available through 1 6 pm sockets 

* +5 volts and ground at each socket 

* 3 software selectable modes of operation 

* handshaking 

* plugs into keyboard or expansion interface 

* on board kluge area for experimenting 

* provisions for interfacing Sears-BSR-RS home controller 

Possible applications include: 

* bidirectional communication between microcomputers 

* parallel printer interface 

* wireless home control via BSR home controller 

* direct control of lights, appliances, and motors 

* interfaces to many popular boards including A/D-D/A converter 

and an EPROM Programmer 

PPI-80 is available now and can be purchased in several forms 

Completely assembled and tested $124.95 

Complete kit with ail parts $ 95.00 

Bare board drilled and etched with assembly manual $ 27.95 

Accessories: 

8 channel A/D - 2 channel D/A by Optimal Technology $115.00 

EPROM Programmer Model EP-2A-79 by Optimal Technology . 155 00 

To order, send payment plus $2.00 shipping and handling to: 

QUANT SYSTEMS 
P.O. BOX 628 
CHARLESTON, S.C. 29402 



uont 
gs^ems 


*>137 


S C residents add 4% sales lai 
Overseas orders add S3 lor shipping 


p.o. box 628 
charleston sc 
29402 



Complete with power supply and all necessary 
cabling. Operates with single or double density con- 
trollers for up to 1 megabyte disk storage. 

6400 bits-per-inch. 48tracks-per-inch. 7msec. 
track-to-track access time. 500,000 bit-per-second 
transfer. Beige cabinet, 5" x 17" x 20 'A'.' 

Don’t look now, but I think there’s a wolf crying. 

Electrolabs 

PO. Box 6721 Stanford, CA 94305 415-321-5601 
USA 800-227-8266 Worldwide: TLC: 345567 Electrolabs PLA 

Dealer inquiries invited. 



A PROFESSIONAL DATA BASE 
MANAGER FOR NORTH STAR 
OPERATING SYSTEMS. 


If you've been struggling with random access pointers, churning out 
pages of BASIC code every time your program needs a newfile, then DBMS-1 
is for you! 

This data base management system allows you to dynamically create 
files with up to ten named, variable length fields. Alpha, numeric and space- 
saving table lookup fields are supported. Your data is stored linked sequential 
and automatically arranged binary tree fashion for fast, keyed searches. 
Records can be amended, deleted, listed alphabetically or summed on 
multiple keys. 

Sophisticated "Wild Card" search procedures allow nearly limitless 
sorting possibilities. There are extensive "help" routines (for instance, you 
can recall your field names, parameters and record numbers at any time). 

But best of all, DBMS-1 performs ALL searching and sorting IN PLACE. 
That means your files don't have to be in RAM. Access to files by other 
programs is easy — DBMS-1 provides header and record sizes and other 
information on request. 

The DBMS-1 system is a series of linking modules which run under 
NORTH STAR BASIC, Release 4.0 or 5.0 with a minimum of 12K of RAM. 

Price of the Diskette is $125. (US), which includes a fully commented 
version of DBMS-1 and a condensed "Go" file. A sample data file is included 
for experimentation. The extensive user's manual may be ordered separately 
for $15., refundable on purchase of the DBMS-1. One year's FREE update 
service is also yours. 

Order Post Paid From: 

THE SOFTWARE DIVISION *^ 312 
LAKE CITY TECHNICAL PRODUCTS 
No. 5 - 1952 SPALL ROAD 
KELOWNA, BRITISH COLUMBIA 
CANADA VI Y 4R1 


THE 

SOFTWARE 

DIRECTORY 

A Comprehensive Guide to Programs 


Now, you can have access to hundreds of 
computer programs, quickly and easily. 

The Software Directory lists available programs 
lor major home and small business computers, including 
Apple... Atari... North Star.. .Radio Shack... PET... CP/M 
Systems and more. 

Indexed for fast and easy reference. Directory 
categories include games, education, utilities, home 
accounting, and professional business programs. It's 
organized according to computer type, so you can find 
the programs designed for your computer, fast. 

The Software Directory describes each program, 
and lists the minimum required system, program price, 
ordering information and vendor address. 

The Software Directory has all the information you 
need for ordering any of the hundreds of software 
programs available. To get it, send a check or money 
order for $9.95 to Software Central. We'll send you a 
software reference book you'll use time and again. 



Software Central 
P.O. Box 30424 Dept. K 
Lincoln, NE 68503 


,>146 


156 Microcomputing, October 1980 




M-ipMs 

S-100 MAINFRAMES-IM-MEMORY 



Dual Micropolis 1015-MOD Il's 


High quality S-100 mainframes with integrated 
dual disk drives, need only your standard S-100 
boards (or ours) to complete the system. 

Standard features include reset-glo-button, keyed on/off power 
switch that also powers-on dual outlets on the rear panel for 
peripheral devices. 'Quasi-coaxial' S-100 Motherboard* with 
adaptive termination assures you of 'silent' operation. Heavy- 
duty linear power supply supports both the Motherboard and 
disk drives. 

*AII have 10 slot Motherboard/card guides 
* Optional rack mount version with only 5 slots — but is available 
in 2<abinet version with 15 slots and horizontal dual drives in 
second cabinet. 

Delivery — 2 to 4 Weeks 


MnM8/1Mb-*1,695°° 

Dual Remex RFD— 2,000's 

MnM8/2Mb-*2,145°° 

Dual Remex RFD— 4,000's 




MnM-HD8/7 + 1 Mb-*4,695°° 
MnM-HD8/2 1 + 1Mb- *5,695°° 
MnM-HD8/35 + 1Mb- *6,595°° 

8" Micropolis Hard Disk + 1 RFD-4000 Floppy Disk 



INTELLIGENT BUSINESS MACHINES CORPORATION 
1612 E. Shields •Fresno, CA 93704«|209) 222-3302 


is 103 


is 0 Reader Service index — page 241 


Microcomputing, October 1980 157 


Dial-up Directory 


Meet the father of Forum-80, Bill Abney. 


Frank J. Derfler, Jr. 
PO Box 691 
Herndon, VA 22070 


I f you’ve read the Dial-up Directory list- 
ings, you’ve seen the title Forum-80. In 
previous articles I’ve examined Computer 
Bulletin Board Systems Chicago-style, Ap- 
ple Bulletin Board Systems by Bill Blue and 
two North Star systems. For this issue, I 
visited the creator of the Forum-80, Bill 
Abney, to find out more about making Radio 
Shack’s TRS-80 into an electronic bulle- 


tin board and program transfer system. 

Bill: “I’m only one deep, Frank. I receive 
calls from my Forum-80 operators around 
the country and constantly try to help them 
with problems. I have almost no time to an- 
swer other inquiries. My stack of letters 
right now is about four inches deep.” 

Microcomputing: “You used a phrase 
there, Bill. You said, ‘my operators.’ It has 
been said that you have a very strong propri- 
etary feeling about Forum-80 systems, de- 
spite the fact that each one is run by other 
private individuals.” 

Bill: “I refer to the Forum-80 network. It is 


not a network of stations that is permanent- 
ly interconnected, but the interconnection 
is there at several levels. The users check 
into different systems and carry informa- 
tion between them. The system operators 
also swap messages between the sys- 
tems. 

“I feel it is very important to keep compat- 
ibility and uniformity between the Forum-80 
operations. Some operators would like to 
make changes in their systems to provide 
unique services, but they can’t do it with the 
existing software. The version 2.1 software 
has been expanded about as far as it can go 
while still maintaining uniformity. There 
have been other problems too.” 

Microcomputing: “Like what?” 

Bill: “Software sharks for one. Bandits 
who make very small changes in my soft- 
ware and sell it themselves. I stopped put- 
ting out any more 2.1 software in December 
1979 and fired up a version 3.0 in February 
1980. The new version will give the Forum 
operators the flexibility to provide all the 
special features they like while maintaining 
uniformity for the user. Version 3.0 will be 
provided to the Forum operators, but they 
will not own it. It will be licensed like other 
commercial software. New licenses will 
cost about $150.” 

Microcomputing: “How will you allow 
more versatility in the program?” 

Bill: “Version 3.0 will allow branching into 
special-purpose subroutines, but the sys- 
tem will initially come up looking like any 
other Forum-80 to the users. Users can then 
treat the system as a standard Forum-80 or 
move into special uses.” 


Forum Augusta, GA 

(3.0) 

803-279-5392 

Forum Boston, MA 

(3.0) 

617-431-1699 

Forum Chicago, IL 

(2.5) 

312-782-8180 

Forum Cleveland, OH 

(3.0) 

216-486-4176 

Forum Dallas, TX 

(3.0) 

214-288-4859 

Forum Denver, CO 

(3.0) 

303-789-0936 

Forum Fairfax, VA 

(3.0) 

703-978-7561 (Genealogy) 

Forum Ft. Lauderdale, FL 

(3.0) 

305-772-4444 

Forum Kansas City, MO 

(3.0) 

816-861-7040 (H.Q. SYS) 

Forum Kansas City, MO 

(3.0) 

816-931-9316 (Commodities) 

Forum Las Vegas, NV 

(3.0) 

702-873-9491 

Forum Memphis, TN 

(3.0) 

901-276-8196 

Forum Memphis, TN 

(3.0) 

901-362-2222 (Hobbyist) 

Forum Mt. Clemens, Ml 

(3.0) 

313-465-9531 (Medical) 

Forum San Francisco, CA 

(3.0) 

415-348-2139 

Forum Tampa, FL 

(2.1) 

813-223-7688 

Forum Union, NJ 

(3-0) 

201-688-7117 

Forum Ventura County, CA 

(2.1) 

805-484-9904 

Forum Wichita, KS 

(3.0) 

316-746-2078 

Forum Wichita Falls, TX 

(2.1) 

817-855-3916 

in honor of our interview with Forum-80 founder, Bill Abney, 1 will limit our system 
list this month to Forum systems. Bill has provided this current (as of publication 
deadline) list of active Forum-80 systems. The number in parentheses refers to the 
version of software in use. Version 3.0 has the most complete set of features. 
Some of these numbers may be redundant to previous lists. Some of the most in- 
teresting special-user systems are running with the Forum-80 software. 


158 Microcomputing , October 1980 



Bill Abney, the Forum-80 founding father. 
Bill provides a lot of support for his 
Forum-80 operators, but wishes he had time 
to do more. 


Microcomputing: “You mean uses like 
family history and medical applications?” 
Bill: “Yes. I have heard of a special- 
interest system for photographers too. 
Some operators may want to provide spe- 
cial services, graphics, programs to run, 
user codes and many other things. These 
submenus can be used by the people they 
are intended for, while other, less sophis- 
ticated, users see the basic Forum-80 menu 
come up in default. I would expect the 
operators to contribute submenu software 
to the network pool so it can be shared 
where appropriate.” 

Microcomputing: “Aside from the soft- 
ware, what does a person need to set up a 
Forum-80?” 

Bill: “They need a TRS-80 with 48K of 
memory. This means they need the expan- 
sion interface. It has to have the RS-232 
card installed. They need three disk drives 
for version 3.0. With the older version the 
third disk was optional, but it is needed in 
this version. They also need an automatic 
answer modem. This will give the full Forum 
capability.” 

Microcomputing: “That looks like a $3500 
system at retail prices. What kind of modem 
do you recommend?” 

Bill: “I think the U.S. Robotics auto an- 
swer modem is a tremendous piece of 
equipment. It is well designed and inter- 
faces with the TRS-80 very well.” 
Microcomputing: “The Forum-80 in Kan- 
sas City (816-861-7040) is referred to as the 
‘headquarters.’ Is it a very active system?” 
Bill: “This system is more for demonstra- 
tion than anything else. It is the only com- 
puter I own, and I use it for all the develop- 
ment work, so it is on the phone as a forum 
at odd hours. However, during the online 
hours, the Forum-80 Headquarters System 
serves many regular and long-distance us- 


ers.” 

Microcomputing: “How did you arrive at 
the Forum-80 name?” 

Bill: “I felt that the term Bulletin Board im- 
plied merely a place to post notices. A fo- 
rum is more a place of public discussion. In 
this view, I hoped the Forum would become 
a place where the microcomputer user 
could discuss his pursuits and exchange in- 
telligence with others. I feel the educational 
value is immense, both for the beginners 
and the experienced users. The 80 in the 
name, of course, came from the TRS-80, but 
with the 3.0 system we are attempting to 
achieve compatibility with other machines 
and prefer to look at it as the ‘Forum of the 
80s.’ ” 

Microcomputing: “What else would you 
like our readers to know, Bill?” 

Bill: “That’s easy! Please tell them to use 
and read the help commands available on 
every system. If they use trial and error 
learning to find all of the Forum’s features, 
they will be frustrated, will probably miss 
something and will keep the system busy 
for much longer than it needs to be. If they 
send a self-addressed legal-size envelope 
with two first-class stamps attached, I will 
send them a Forum-80 user’s guide. I would 
much rather pay to print up this guide than 
have people tie up systems. It is nothing 


fancy, but it is useful. I hope they read it.” 

Send your large double-stamped self-ad- 
dressed envelopes to: Forum-80 Headquar- 
ters, 7600 E. 48th Terrace, Kansas City, MO 
64129. 

The Micro-Connection 

Here are two names for you: The Periph- 
eral People and Don Stoner. The first name 
was new to me, but the second has been fa- 
miliar for a long time. Don Stoner is better 
known to the amateur radio world as 
W6TNS. He has been involved in radio 
equipment design and manufacturing at 
several different levels. The Peripheral Peo- 
ple is the name of Don’s company in Wash- 
ington state. 

These names are interesting, particularly 
to TRS-80 users, because of their new prod- 
uct called the Micro-Connection. Basically 
a modem, this device connects directly to 
the phone line so you don’t need an 
acoustic coupler. (Acoustic couplers and 
telephone handsets sometimes cause dis- 
tortion, and can be the entry point for dis- 
ruptive noise.) 

This device will interface with all TRS-80 
models I, II and III, as well as the TRS-80 
Color Computer; any memory size; any type 
of BASIC; and with or without an expansion 
interface. Previously, a computerist needed 



The Micro-Connection modem in operation. It is a small, convenient device with great 
capabilities. 


Microcomputing, October 1980 159 


the expansion interface and had to install 
the RS-232 card to use a modem for tele- 
communications. This called for a $400 
investment before you even got to the 
modem price. 

The Micro-Connection is selling for $249. 
It plugs into the TRS-80 bus connector, or 
can plug directly into the screen printer port 
of the expansion module. 

The Micro-Connection also has a female 
RS-232 output connector on the modem. 
Thus, a serial printer can print along with 
the modem and provide hard copy of every- 
thing on the screen, without fancy software. 
This provides a port that is separate from 
the regular TRS-80 RS-232 card. You can op- 
erate the Micro-Connection as just an inter- 
face between the TRS-80 and any RS-232 
device — it does not have to be operating as 
a modem to give RS-232 output. This means 
you can run a series printer without the ex- 
pansion interface and RS-232 card. Do you 
understand why they call it the Micro-Con- 
nection? 

Finally, since Don is an active amateur ra- 
dio operator, the literature for the Micro- 
Connection points out that you can use this 
device with an amateur radio station to 
transmit and receive ASCII. This can be 
done with any modem, of course, but the 
configuration of the Micro-Connection 
makes it easy to get at the audio input and 


audio output lines for interconnection to 
the radios. Since the FCC made ASCII 
transmission legal in March, this has be- 
come an very important consideration for 
modem users and manufacturers. 

For more information on the Micro-Con- 
nection, contact The Peripheral People at 
PO Box 524, Mercer Island, WA 98040. They 
also run their own bulletin board system at 
206-723-DATA. 

Random Noise 

Some users of Novation CAT and other 
acoustically coupled modems have written 
to say that they have some intermittent 
distortion problems that seem to involve 
the telephone handset. The cures include 
everything from putting cotton in the ear- 
piece cup to using strange chants and in- 
cantations. 

These cures sound like the medieval 
treatment for the plague, but there is a little 
science behind them. Part of the science in- 
volves doing something — anything — to un- 
pack the carbon granules in the telephone 
mouthpiece. The old-time ham radio opera- 
tors used to broadcast with a pencil in one 
hand and tap the microphone periodically 
to unpack the carbon. 

Got a transmission problem with an 
acoustically coupled modem? Made sure 
the phone is tightly seated and the environ- 


ment is free of outside noise and bang the 
phone mouthpiece against your palm once 
or twice. It might help. 

Also, the carbon microphones create a 
second harmonic feedback through the 
handset back to the earpiece, thereby 
creating distortion in the modem input side. 
That may explain why cotton around the in- 
side of the earpiece sometimes helps. It can 
dampen the second harmonic vibration. 
Just don’t cover up the sound holes or cut 
down on the level of the tones you want. 

Novation is coming out with a dynamic 
element to replace the carbon one in your 
telephone if it becomes a persistent prob- 
lem. This element will do away with both 
carbon packing and second harmonic reso- 
nance. 

This is another argument in favor of 
direct-coupled modems. They aren’t as por- 
table, but they may provide more reliable 
operation. 

Data Transfer 

Send me your data! If you have com- 
ments, questions or information about 
computer bulletin board services or other 
aspects of data transmission, let me know. 
Use the address at the beginning of the arti- 
cle or send it to TCB967 on The Source. 
Send a stamped envelope if you want a 
response to paper mail. ■ 



FULL COLOR 

GRAPHICS 

Complete line of color imaging systems with high 
resolution real time video FRAME GRABBER 
for the S-lOO bus. 

Capture and digitize a video frame in l/60th of a second. Store 
up to 2 million bits of image data in on-board buffer. By software, 
select the best resolution for your application from 256 to 1280 
pixels per TV line. Display your digitized image or your computer J 

processed image with up to 256 gray levels or 65,536 T ; : % 
simultaneous colors on standard B/W, NTSC or RGB color TV 
monitors. 'i. 


480x512 Contoured digitized image 


mm 

Wmi 

in 

F?f! 

phi 

!! 

1 



Features: 


240x256 Digitized image. 1 6 levels 






• Highest quality 480x512x8 digital video image 

• Input capability from TV cameras or other sources 

• Variety of synchronization choices 

• 2 selectable video A/D conversion circuits 

• Choice of 1 , 2, 4, 8, 16 or 24 bits per pixel 

• 32K-byte image memory on the basic system 

• 64K, 1 28K, 1 92K and 256K-byte system capacity 

• High resolution lightpen input 

• Photographic trigger control input 

• Software selectable system parameters 

• Stand-alone intelligent graphics unit with universal interface 

Accessories: 


• RGB color monitor 

• High performance lightpen 


480x512 Computer-generated 


240x256 Digitized image. 1 6 levels 


ROBOTICS-AUTOMATED COUNTING AND MEASURiNG-QUALmr CONTROL MONITORING 
PATTERN RECOGNITION-IMAGE PROCESSING-MEDICAL AND SCIENTIFIC RESEARCH 


1HDIGITAL 
Ml GRAPHIC 
= SYSTEMS 


• Hard copy printer/plotter 

• Software packages available 

441 California Avenue 
Palo Alto, CA 94306 
415/494-6088 


160 Microcomputing, October 1980 





THE ORIGINAL MAGAZINE FOR 
OWNERS OF THE TRS-80™* MICROCOMPUTER 


SOFTWARE 
FOR TRS-80™ 
OWNERS 


CQMPUTRQNICS 


C. 


MONTHLY 
NEWSMAGAZINE 
FOR TRS-80" 
OWNERS 


MONTHLY NEWSMAGAZINE 
Practical Support For Model I & II 


• PRACTICAL APPLICATIONS 

• BUSINESS 

• GAMBLING • GAMES 

• EDUCATION 

• PERSONAL FINANCE 

• BEGINNER S CORNER 

• NEW PRODUCTS 

• SOFTWARE EXCHANGE 

• MARKET PLACE 

• QUESTIONS AND ANSWERS 

• PROGRAM PRINTOUTS 
AND MORE 


PROGRAMS AND ARTICLES PUBLISHED IN OUR FIRST 12 ISSUES 
INCLUDE THE FOLLOWING: 

• A COMPLETE INCOME TAX PROGRAM (LONG AND SHORT FORM) 

• INVENTORY CONTROL 

• STOCK MARKET ANALYSIS 

• WORD PROCESSING PROGRAM (FOR DISK OR CASSETTE) 

• LOWER CASE MODIFICATION FOR YOUR VIDEO MONITOR OR PRINTER 

• PAYROLL (FEDERAL TAX WITHHOLDING PROGRAM) 

• EXTEND 16 DIGIT ACCURACY TO TRS-80™ FUNCTIONS (SUCH AS 
SQUARE ROOTS AND TRIGONOMETRIC FUNCTIONS) 

• NEW DISK DRIVES FOR YOUR TRS 80™ 

• PRINTER OPTIONS AVAILABLE FOR YOUR TRS-80™ 

• A HORSE SELECTION SYSTEM*** ARITHMETIC TEACHER 

• COMPLETE MAILING LIST PROGRAMS (BOTH FOR DISK OR CASSETTE 
SEQUENTIAL AND RANDOM ACCESS) 

• RANDOM SAMPLING***BAR GRAPH 

• CHECKBOOK MAINTENANCE PROGRAM 

• LEVEL II UPDATES***LEVEL II INDEX 

• CREDIT CARD INFORMATION STORAGE FILE 

• BEGINNER’S GUIDE TO MACHINE LANGUAGE AND ASSEMBLY 
LANGUAGE 

• LINE RENUMBERING 

• AND CASSETTE TIPS, PROGRAM HINTS, LATEST PRODUCTS 

COMING SOON (GENERAL LEDGER. ACCOUNTS PAYABLE AND 
RECEIVABLE, FORTRAN 80. FINANCIAL APPLICATIONS PACKAGE, 
PROGRAMS FOR HOMEOWNERS. MERGE TWO PROGRAMS, 
STATISTICAL AND MATHEMATICAL PROGRAMS (BOTH 
ELEMENTARY AND ADVANCED) . . AND 


1 * * W< 


WORD PROCESSING PROGRAM (Cassette or Disk) For writing letters, text, mailing lists, etc., with each new subscriptions or renewal. 
LEVEL II RAM TEST (Cassette or Disk) Checks random access memory to ensure that all memory locations are working properly. 

DATA MANAGEMENT SYSTEM (Cassette or Disk) Complete file management for your TRS-80™ 


CLEANUP (Cassette or Disk) Fast action Maze Game 


F|?££ 


ADVENTURE (Cassette or Disk) Adventure #0 by Scott Adams (From Adventureland International) . trsso’' IS A TRADEMARK OF TANDY CORP 


SEND FOR OUR NEW 48 PAGE SOFTWARE CATALOG (INCLUDING LISTINGS OF HUNDREDS OF TRS-80™ PROGRAMS AVAILABLE ON 
CASSETTE AND DISKETTE). $2.00 OR FREE WITH EACH SUBSCRIPTIONS OR SAMPLE ISSUE. 


iCQMPUTHQWICS; 

MATVewiATCAL APSVCATC3NS SCPJVCf 

50 N. PASCACK ROAD 
SPRING VALLEY, NEW YORK 10977 




ONE YEAR SUBSCRIPTION $24 

TWO YEAR SUBSCRIPTION $48 

SAMPLE OF LATEST ISSUE $ 4 

START MY SUBSCRIPTION WITH ISSUE 



HOUR 

ORDER 

LINE 


(914) 425-1535 


(#1 - July 1978 • #7 - January 1979 • #12 - June 1979 • #18 - January 1980) 
NEW SUBSCRIPTION RENEWAL 


NEW TOLL-FREE 

ORDER LINE 

(OUTSIDE OF N.Y. STATE) 

(800) 431-2818 

NEWS!! 

MOD-II NEWSLETTER 
$ia/year Cor 12 Issues) 



CREDIT CARD NUMBER EXP. DATE 

SIG NATURE 

NAME 

ADDRESS -CITY STATE ZIP. 

*** ADD S6/YEAR (CANADA. MEXICO) ADD SI2/YEAR AIR MAIL - OUTSIDE OF USA, CANADA & MEXICO *•* 


Reader Service index— page 241 


Microcomputing, October 1980 161 


Reduce Search Time 
With an Index 


The author shows how you can breeze through file searches 
with this Heath H8 program. 


LeRoy E. Kolderup 
1497 Sugartown Road 
Paoli, PA 19301 


M icroprocessors are frequently used in 
business applications to search long 
files for a specific record. Such a search is 
usually made by moving the file into main 
memory and using a BASIC routine of the 
type shown in Listing 1, where a name (N$) 
is used as a key to locate a record (M$[K]). A 
print of this record supplies the desired in- 
formation contained in the remainder of the 
record, which might include address, date 
of last order and so on. 

The limitations imposed by BASIC and by 
sequential files make a search through 
several hundred records a time-consuming 
task that would try anyone’s patience. But 
the time can be significantly reduced by us- 
ing an index. 

A file can be indexed in many ways, but 
some methods are elaborate and unsuit- 
able for use on a small system with limited 
memory. The indexing system described 
here uses less than 100 bytes of memory, 
can be easily generated and will reduce 
search time by a factor of from ten to 20. 

In a business application, the principle 
key with which a search is made might be 
the name of an individual or company. The 


records can be arranged in alphabetic order 
of the principle key. The index system that 
will be described supplies the record num- 
ber of the first record that begins with each 
letter of the alphabet. This information is 
then used to limit the area of search to a 
specific portion of the file. 

Generating the Index System 

The first step in generating this index is 
to sort the file, if it is not already in alpha- 
betic order. This step need only be repeat- 
ed when additional records are added to a 
file. For files of any significant length, the 
sort technique should be more advanced 
than the overused bubble sort to avoid ex- 
cessive sorting times. Such techniques as 
the Shell-Metzner sort or Hoare’s Quick- 
sort have been described in detail and will 
not be repeated here (see “Quicksort,” 
Microcomputing, April 1979, p. 96). 

The second step generates an index that 
lists the record number of the first record 
that starts each alphabetic character 
group. If the file contains records that begin 
with the letter A, its index value will, of 
course, be 1 . If the first record that has a key 
beginning with the letter G is record number 
145, then the index for G will be 145. If there 
is no record beginning with a particular al- 
phabetic character, its index is made equal 
to the number of the last record in the file. 


A program to generate this index is given 
in Listing 2. 1 presume that the file to be in- 
dexed is formatted with the keyword at the 
beginning of each record, has been sorted 
alphabetically and resides on disk. Lines 10 
through 80 constitute the input routine to 
load the file into memory. This program was 
prepared on a Heath H8, and some modifi- 
cations may be required for other disk sys- 
tems or for a tape system. 

The last record in the file is a special rec- 
ord that contains two numeric zeros in char- 
acter format (00) as the two leading charac- 
ters. Note that detection of this pair of zeros 
in line 50 serves as a convenient end-of-file 
marker. If the file has not been previously in- 
dexed, then this character pair should be 
appended as the final record before using 
the index generator. 

Lines 120 through 190 generate the index, 
1(A) for A = 1 to 26. Line 140 initially com- 
pares the ASCII code of the first character 
of the record with the code for the character 
A. If they do not compare, no records start 
with A, and the index value assigned to 1(1) 
is the value of the final record. The next 
character in the alphabet is then selected 
and the process is repeated. If the compari- 
son is true, then 1(1) Is set equal to one in 
line 150. 

Line 160 selects the next record and 
checks for the end-of-file in line 170. Line 
180 compares the first character of the rec- 
ord with that of the previous record and con- 
tinues selecting the next record until a line 
beginning with a different character is 
reached. The program then goes to the next 
alphabetic character and repeats until all 
characters of the alphabet have been in- 
dexed by assigning the number of the rec- 
ord that first begins with each letter of the 
alphabet to the index 1(A). 

Lines 210 through 240 pack this index in- 
to a single string that is structured to re- 
quire a minimum of file space and can be 


>LIST EXAMPLE. BAS 
00120 INPUT "NAME? ";N$ 

00130 IF N$="ST0P" THEN 190 
00140 FOR K=1 TO 400 

00150 IF LEFT$(M$<K),LEN(N$) ) : =N$ THEN PRINT H$<K):GOT0 120 
00160 NEXT K 

00170 PRINT "NO MATCH FOUND" 

00180 GOTO 120 
00190 END 


Listing 1. Typical file search routine. 


162 Microcomputing, October 1980 


:>LIST INDEXGEN.BAS 

00005 REH FILE INPUT ROUTINE 

OOOIO DIM M$ ( 400 ) , I ( 26 ) 

00020 OPEN "TESTFILE" FOR READ AS FILE #1 
00030 FOR K=1 TO 400 
00040 LINE INPUT H1,;M$(K) 

00050 IF LEFT$(H$(K),2)= H 00" THEN 70 
00060 NEXT K 
00070 CLOSE HI 
00080 Z=K-1 

00090 REM END OF FILE INPUT 
00110 REM BEGIN INDEX GENERATION 
00120 K= 1 

00130 FOR A=1 TO 26 

00135 REM CHECK FOR MATCH OF 1ST CHARACTER OF RECORD AND ALPHA CHARACTER 
00140 IF ASC(MKK) )<>A+64 THEN I(A) = Z:GOTO 190 
00145 REM ASSIGN RECORD NO. AS INDEX VALUE 
00150 I(A)=K 

00155 REM SELECT NEXT RECORD, CHECK FOR END OF FILE 
00160 K=K+1 

00170 IF LEFT$(M$(K) ,2)="00 M THEN 190 

00175 REM IF 1ST CHARACTER OF RECORD MATCHES THAT OF PRECEEDING RECORD 
00177 REM THEN NEXT RECORD 

00180 IF ASC(M$(K) )=ASC(M$(K-1 ) ) THEN 160 
00190 NEXT A 

00200 REM GENERATE INDEX STRING AND APPEND TO FILE 
00210 I$="00" 

00220 FOR A=1 TO 26 

00230 I$=I$+LEFT$(RIGHTi(" "+STR$ (1(A)), 4), 3) 

00240 NEXT A 
00250 MKZ + 1 ) = Ii 

00260 REM END OF INDEX GENERATION 

00290 REM URITE FILE UITH INDEX APPENDED BACK TO DISK 
00300 OPEN •'TESTFILE*' FOR URITE AS FILE HI 
00310 FOR K S 1 TO Z+1 
00320 PRINT HI ,M$(K) 

00330 NEXT K 
00340 CLOSE HI 
00350 END 
> 

Listing 2. Program to generate a file index. 


’♦PRINT I* 

OO 1 16 58 941061181 4517338721 1 21 723825928028929238731 0328358387387367387382387 


Listing 3. Format of index string. 


easily decoded in the search routine. This 
string begins with the character pair 00 and 
continues with three digits allocated for 
each index entry. Line 230 converts the in- 
dex value for each 1(A) to character format, 
strips the trailing zero and either adds or 
strips leading zeros to make all entries have 
a length of three characters. (A file with 
more than 999 records will require this rou- 
tine to be modified to allow for four charac- 
ters.) These values are then strung together 
to form the index string. 

Listing 3 illustrates the format of the in- 
dex string for a typical file. In this example, 
the first record in the file begins with A, rec- 
ord 16 is the first record beginning with B, 
record 58 with C and so on. No records 
begin with the letters I, Q, U, V, X and Z; 
therefore, these letters are indexed to 387, 
the last record in the file. Line 250 appends 
this index string to the end of the file. Lines 
300 through 340 write the file with the ap- 


pended index back to disk. 

Searching the Index 

The indexed file is now ready for a rapid 
search. Changes to a record (other than the 
first character of the keyword) or deletion of 
a record can be made without requiring the 
generation of a new index. 

A typical program for searching the in- 
dexed file is shown in Listing 4. Lines 10 
through 70 contain the input routine to load 
the file together with the index string into 
memory. Lines 80 through 110 decode the 
index string into 26 index values for 1(A). 
These values are then used in line 140 of the 
search routine to confine the search to 
those records that begin with the same 
character as the key. If no records that start 
with this character are present, the search 
is indexed to the end of the file and the “NO 
MATCH FOUND” message is immediately 
displayed. 


BUSINESS 

SOFTWARE 

DATEBOOK™ 

NEW! for NorthStar, 
Micropolis, TRS-80 Mod II 
& any other CP/M based 
operating system. 

End paging through an appointment 
book forever! Easy to learn & use. 

★ Replaces your office appoint- 
ment book 

★ Searches for openings that fit 
time of day, day of week & day 
of year constraints 

★ Appointments made, modified or 
cancelled by a few key strokes 

★ Copies of day’s appointments 
can be quickly printed 

★ Schedule appointments 4 
months in advance - plus 

$295. Manual alone - $25. 

TEXTWRITER III™ 

NEW FEATURES! a text 
formatting program for North- 
Star & TRS-80 DOS, Micropo- 
lis MDOS & any CP/M based 
system. 

★ Proportional spacing & en- 
hanced printing for 

• Diablo • Qume • NEC printers 

★ Enhanced printing includes 
ribbon color change, dual pitch, 
reverse line feed, 

• UNDERSCORE 

• BOLDFACE 

• DOUBLE STRIKE 

• STRIKEOUT 

• SUBscript 

• SUPER script 

★ Allows for optional left justified 
page headings on even num- 
bered pages & right justified on 
odd numbered pages 

$125. Manual alone - $25. 


MAILROOM™ 

Sophisticated mailing list facility. 
HELP & EXPLAIN commands to 
guide user through operation of 
system. Data base is flexible 
enough to permit selection on a 
complex set of criteria. Capacity is 
limited only by the available disk 
storage. 

$175. Requires CP/M & CBASIC 


CBASIC2™ 

$95. Manual alone • $15. 


DIGITAL 

MARKETING 

2670 Cherry Lane 
Walnut Creek, CA 94596 
(415) 938-2880 




DATEBOOK & TEXTWRITER are trademarks of 
Organic Software 

MAILROOM is a trademark of The Software 
Works Inc. 

CBASIC is a trademark of Compiler Systems Inc 
TRS-80 is a trademark of Radio Shack 
CP/M is a trademark of Digital Research 
Outside the USA add $10. for postage & handling 


i/ 0 Reader Service index— page 241 


Microcomputing, October 1980 163 


The program was tested using a file con- 
taining 387 records. The index generation 
process (lines 120 through 250, Listing 2) 
was completed in 90 seconds after the file 
was loaded into memory. (File load and 
dump time will vary with record lengths and 
distribution of a file on the disk sectors.) 


The file was then searched for several 
records scattered throughout, using the 
last name as a key and printing out the com- 
plete record as the response. I used the pro- 
gram contained in Listing 4. The response 
times varied from one to six seconds, with 
an average of 2.6 seconds. 


I repeated the test without the benefit of 
an index by changing line 140 to read FOR 
K = 1 TO 400 and deleting lines 80 through 
110 from the program in Listing 4. The file 
was searched for the same records as in the 
previous test. In this case, the response 
times varied from three to 66 seconds. As 
you would expect, the time for any given 
record was roughly proportional to the rec- 
ord number. The average time of 38 sec- 
onds was about 15 times longer than that 
required with an index. 

The above indexing scheme is one of sev- 
eral possible methods of using an index. 
This one requires little additional memory, 
has a simple index generation program and 
requires only a few additional lines to the 
search routine. It is directly applicable to al- 
most any database file and can be adapted 
with minor modifications to handle a case 
where the keyword is located at other than 
the beginning of a record. It can be used to 
quickly locate records for both display and 
update purposes. 

Application of this technique to a file 
with as few as 100 records will pay off in re- 
duced time to locate specific records for 
display, update or other processing. For 
larger files, the time saved is significant, 
and efficient data processing demands the 
use of an index. ■ 


>LIST QSEARCH.BAS 

00005 REM FILE INPUT ROUTINE 

00010 DIM Ml (400 ) , I < 26) 

00020 OPEN "TESTFILE" FOR READ AS FILE #1 
00030 FOR K=1 TO 400 
00040 LINE INPUT #1,;M$(K) 

00050 IF LEFT$(M$(K) ,2)="00" THEN 70 
00060 NEXT K 
00070 CLOSE N1 

00075 REM DECODE INDEX STRING 
00080 I$=M1(K) 

00090 FOR A=1 TO 26 

00100 I ( A)=VAL(HID4( 1$ r 3*A f 3 ) ) 

00110 NEXT A 

00115 REM FILE SEARCH ROUTINE 

00120 INPUT "NAME? "JN1 

00130 IF N$="ST0P" THEN 190 

00140 FOR K = I<ASC(N$)-64) TO I(ASC(N$ )-<63 ) 

00150 IF LEFT$(M*(K),LEN<N$))=N$ THEN PRINT N$(K):G0T0 120 
00160 NEXT K 

00170 PRINT "NO MATCH FOUND" 

00180 GOTO 120 
00190 END 

> 

Listing 4. Search program for an indexed file. 


60 Hz CRYSTAL TIME BASE 
$4.95 (Complete Kit) 

Uses MM5369 CMOS divider 1C 
with high accuracy 3.579545 
MHZ Crystal. Use with all MOS 
Clock Chipsor Modules. Draws 
only 1 .5 MA. All parts, data and 
PC Board included 100 Hz. 
same as above, except $5.95 


D.C. HORN 

VERY LOUD! 

6-12 VDC 
Like Used In 
Smoke Alarms. 
FANTASTIC SAVINGS. 
Compare this true value. 

.60 ea. 4 For $2.00 


PMD-1 IK-60 

60 Volts. HFE 800-20K 
12 Amps. PNP TO-3 
150 Watts. By Lambda. 

$1.50 


Crystal 

Super Savings 

4.433618 MHZ 

2/S1.10 


REPEAT OF A SELL-OUT! 

VECO PRECISION THERMISTOR GLASS TYPE. VECO 
#41 A72. 8.2K OHMS AT ROOM TEMP. VERY SENSITIVE. 
INDIVIDUALLY PACKAGED IN PLASTIC VIALS. $3 00VALUE 

$1.00 each or 3 FOR $2.50 


MICRO MINI 
TOGGLE SWITCHES 
6 for $5 with hardware. 



99$ 

EACH 


****** CABLE TIES ****** 

MAKE YOUR PROJECTS “NEAT & TIDY.”4" CABLE TIES AT 
A FANTASTIC PRICE. GET THIS BARGAIN AND “TIE’’ IT 
DOWN $2.00 for 100 or better yet $15.00 for 1000 


Digital Research: Parts 

(OF TEXAS) 

P.O. BOX 401247C GARLAND, TEXAS 75040 • (214) 271-2461 


Video- Volley 

Introductory Offer 

$795 


ALL NEW! 


A Full Color* TV Game For The Family 

Six exciting TV Games — Hockey, T ennis and Handball with one or two 
player capability for each game. Ball velocity doubles after the fourth 
player hit for an increasingly competitive game. 

Adjustable paddle size for each player allows for handicapped play if 
desired. Paddles can give automatic ball spin with seven possible 
angles of ball deflection. 

Automatic digital scoring appears after each point is scored. Game 
ceases automatically after one player scores 15 points. Serving is from 
the paddle of player who scored the last point, thus server can “place" 
his shot. 

Video-Volley is designed to be installed, with a minimum of effort, to 
any standard television receiver, either color or black and white. 
Batteries are not required. 

Small hand-held player modules with 15 foot cord length provides 
more comfort and versatility for players. 

The compact command module sits atop the television receiver and 
has front panel control allowing effortless change from normal 
television reception to game play. Easy disconnection of the player 
hand-held modules facilitates easy set-up and take-down for storage. 


TERMS: Add 504 postage, we pay balance Orders under $15 add 754 
handling. No C.O.D. We accept Visa, MasterCharge and American Ex- 
press cards. Tex. Res. add 5% Tax. Foreign orders (except Canada) add 
20% P&H. 90 Day Money Back Guarantee on all items. 


164 Microcomputing , October 1980 





Now NRI takes you inside the 
world’s most popular microcomputer 
fotrain you at home as the t 
new breed of computer specialist! 


NRI teams up with Radio Shack 
to teach you how to use, 
program and service 
microcomputers.. .make you 
the complete technician. 

It’s no longer enough to be just a 
programmer or a technician. With micro- 
computers moving into the fabric of our 
lives (over 200,000 of the TRS-80™ alone 
have been sold), interdisciplinary skills 
are demanded. And NRI can prepare 
you with the first course of its kind, 
covering the complete world of the 
microcomputer. 

Learn At Home 
in Your Spare Time 
With NRI training, the program- 
mer gains practical knowledge of hard- 
ware, enabling him to design simpler, more 
effective programs. And, with advanced 
programming skills, the technician can 
test and debug systems quickly and easily. 

Only NRI gives you both kinds of 
training with the convenience of home 
study. No classroom pressures, no night 
school, no gasoline wasted. You learn at 
your convenience, at your own pace. Yet 
you’re always backed by the NRI staff and 


Training includes TRS-80 computer, transistorized 
volt-ohm meter, digital frequency counter, 
and the NRI Discovery Lab with hundreds of tests 
and experiments. 

(TRS-80 is a trademark of the Radio Shack division of Tandy Corp.) 


your instructor, answering questions, giving 
you guidance, and helping you over the 
tough spots. 

Explore the TRS-80 
Inside and Out 

NRI training is hands-on training, 
with practical experiments and demon- 
strations as the very foundation of your 
knowledge. You don’t just program your 
computer, you introduce and correct faults 
. . .watch how circuits interact. . .interface 
with other systems. . . gain a real insight 
into its nature. 

You also build test instruments and 
the NRI Discovery Lab, 
performing over 60 
separate experiments 
in the process. You 
learn how your 
trouble-shooting 
tools work, and gain 
greater understand- 
ing of the informa- 
tion they give you. 

Both microcomputer 
and equipment come 
as part of your train- 
ing for you to use 
and keep. 


NRI Schools 

McGraw-Hill Continuing 
Education Center 
3939 Wisconsin Avenue 
Washington, D.C. 20016 

NO SALESMAN WILL CALL 

Please check for one free catalog only. 

□ Computer Electronics Including 
Microcomputers 

□ TV/Audio/Video Systems Servicing 

□ Complete Communications Electronics 
with CB • FCC Licenses • Aircraft, 

Mobile, Marine Electronics 

□ CB Specialists Course 


Send for Free Catalog... 

No Salesman Will Call 

Get all the details on this exciting 
course in NRI’s free, 100-page catalog. It 
shows all equipment, lesson outlines, and 
facts on other electronics courses such as 
Complete Communications with CB, TV and 
Audio, Digital Electronics, and more. Send 
today, no salesman will ever bother you. 
Keep up with the latest technology as you 
learn on the world’s most popular computer. 
If coupon has been used, write to NRI 
Schools, 3939 Wisconsin Ave., Washington, 
D.C. 20016. 




All career courses 
approved under GI Bill. 
□ Check for details. 


□ Digital Electronics • Electronic 
Tfechnology • Basic Electronics 

□ Small Engine Repair 

□ Electrical Appliance Servicing 

□ Automotive Mechanics 

□ Auto Air Conditioning 

□ Air Conditioning, Refrigeration, & 
Heating including Solar Tfechnology 


Name 


(Please Print) 


City/State/Zip 

Accredited by the Accrediting Commission of the National Home Study Council 


Microcomputing, October 1980 165 


Great Simulations 



Jet Fighter Pilot 

The Jet Fighter Pilot package takes 
you as close to real combat flying as 
possible. . .without pulling G’s. 

In this brilliantly realistic simulation, 
you become the pilot of a high perfor- 
mance, twin turbo-jet fighter. Total con- 
trol of the aircraft is yours. 

At the start of your mission, you’ll go 
through an entire engine start procedure 
before your flight (provided your ground 
maintenance is up to par). Your takeoff 


will be from either the deck of an aircraft 
carrier (via a steam catapult) or from an 
airfield. 

All controls respond the same as they 
would on a real jet fighter. You’ll have to 
constantly monitor your display and 
make adjustments to your throttle, 
flaps, rudder and air spoilers. You 
decide when to retract flaps, landing 
gear and release the auxiliary fuel drop- 
tanks. 

Your on-board navigational computer 
will direct you to your selected airport. 
The Glideslope/Localizer information 
will aid you in approaching and landing 
on an aircraft carrier deck or airfield. 

The Weapons Control Computer will 
arm your missiles, provide you with the 
range and bearing to a target, and tell 
you when to attack. And, if things should 
get a little too hot, you have an ejection 
seat command for egress. 

For a carrier-based landing, you’ll 
have to deploy your tail hook. For a land- 
based landing, you’ll need reverse thrust 
and your drag chute. 

After you’ve flown a few missions with 
the Jet Fighter Pilot package, you’ll 
know you’ve earned your wings. 

Order No. 01 59R $14.95 






Cosmic Patrol 


WARNING: PLAYERS OF THIS GAME 
SHOULD BE PREPARED FOR A STATE 
OF REALISM HITHERTO 
UNAVAILABLE ON THE TRS-80 

The Cosmic Patrol program puts you 
in the command chair of a small in- 
terstellar patrol craft. Your mission is to 
defeat Terran space and prey on the 
Quelon supply ships which carry essen- 
tial parts and lubrificants for that im- 
placably hostile robotic force. The drone 
freighters are fairly easy pickings for the 
accomplished starship pilot, but beware 
of the 1-Fighter escorts. They’re armed, 
fast and piloted by intelligent robots 
linked to battle computers. They never 
miss. 

The Cosmic Patrol program is not just 
another search and destroy game. With 
its fast, real-time action, impressive 
sound option and superb graphics, this 
machine-language program is the best 
of its genre. 


Don’t keep putting quarter after 
quarter into arcade games or spending 
big bucks for video games cartridges. 
Get Cosmic Patrol from Instant Soft- 
ware— and get the best for less! 

Order No. 0223R $14.95 




Battleground 

It is late 1944, and the Allied Forces 
are sweeping toward Berlin. As General 
in command of your sector, you study 
the map. At your command, are tanks, 
planes, artillery, infantry, engineers and 
vehicles— an awesome array of fighting 
men and the machines of war. From In- 
telligence reports you know that the 
enemy General is a shrewd tactician, not 
to be under-estimated. It will take plann- 
ing and strategy to outwit this wily old 
campaigner. 

The battle map of your sector will fill 
with markers, each showing the deploy- 
ment of your forces. You and another 
player will slip into the roles of opposing 
German and American commanders as 
yet another battle unfolds. 

Battleground allows you to ex- 
perience the awesome responsibility of 
a battle-area command. It will be up to 
you to deploy your tanks, planes, 
vehicles, weapons and men. On your 
shoulders rests the decision, whether to 
call for direct artillery gunfire, or to order 
your planes into the air. You will con 
stantly be watching for an enemy air- 
drop, always carefully maneuvering your 
forces. 

The stark reality of World War II 
comes alive in Battleground. 

Order No. 01 41 R $9.95 


TO ORDER: Look for these programs at the 
dealer nearest you (see list of dealers on page 
199). If your store doesn't stock Instant 
Software send your order with payment to: 
Instant Software 
Order Dept, 

Peterborough, N.H, 03458 
(Add $1.00 for handling) or call toll-free 
1-800-258-5473 (VISA, MC and AMEX ac- 
cepted). 


Instant Software 


Prices subject to change without notice. 


PETERBOROUGH, N.H. 03458 
603-924-7296 


166 Microcomputing, October 1980 


Ask for Instant Software at a computer store near you. 


Alabama 

Anderson Computers 
3156 University Dr., Huntsville 
Computerland of Huntsville 
3020 University Dr., Huntsville 
OlensKy Bros. 

3763 Airport Blvd., Mobile 

Arizona 

Professional Data Systems 
4506-A N. 16th St.. Phoenix 
Millets TV & Radio 
621 East Broadway, Mesa 

California 

AMCO Elect. Supply 
635 E. Arrow Hwy., Azusa 
Byte Shop 

8038 Clairmont Mesa Blvd., San Diego 
Byte Shop 

123 E. Yorba Linda, Placentia 
Byte Shop of Mt. View 
1415 West El Camino Real, Mt. View 
Byte Shop of Sacramento 
6041 Greenback Ln., Citrus Heights 
Capital Computer Systems 
3396 El Camino Ave., Sacramento 
Computers Made Easy 
819 East Ave. 0-9, Palmdale 
Computer Store of San Leandro 
701 MacArthur Blvd., San Leandro 
Computer World 

6791 Westminster Ave., Westminster 
Computerland 

16720 S. Hawthorne, Lawndale 

Computerland of W. LA 

6840 La Cienega Blvd., Inglewood 

Coast Electronics 

31 18 No. Main St., Morro Bay 

Computerland 

24001 via Fabricante No 904, Mission Viejo 

Computer Mart of California 

315 Diamond Bar Blvd., Diamond Bar 

Electronic Systems 

4883 Tonino, San Jose 

Hobbi-tronics 

1378 So. Bascom Ave., San Jose 
Hobby World 

19511 Business Ctr. Dr., Unit 6. Borthridge 
Huntington Computing 
2020 Charles St., Corcoran 
I.C.E. House Inc. 

398 North E. St.. San Bernardino 
Jade Computer Products 
4901 W. Rosecrans, Hawthorne 
Malibu Microcomputing 
23910A Deville Way. Malibu 
Marfam Co. 

6351 Almaden Rd., San Jose 
Opamp/Technical Books 
1033 N. Sycamore Ave., Los Angeles 
PC Computers 

10166 San Pablo Ave., El Cerrito 
Q.l. Computers, Inc. 

15818 Hawthorne Blvd., Lawndale 

Radio Shack Dealer 

8250 Mira Mesa Blvd., San Diego 

Radio Shack Dealer 

50 N. Cabrillo Hwy., Half Moon Bay 

Santa Rosa Computer Center 

604 7th St.. Santa Rosa 

Silver Spur Elect. Comm. 

13552 Central Ave., Chino 

The Computer Store 

820 Broadway, Santa Monica 

Colorado 

Colorado Computer Systems 
311 W. 74th Ave., Westminster 
Computerland of North Denver 
8749 Wadsworth Blvd., Arvada 
Computer Shack 
1635 South Prairie, Pueblo 
Software Gourmet 
1111 S. Pearl St., Denver 
The Computer Store 
2300 Welton St., Denver 

Connecticut 

American Business Computers 
454 Thames St., Groton 
Computerlab 

130 Jefferson, New London 

Computerland 

1700 Post Rd., Fairfield 

Computerland 

60 Skiff St., Hamden 

Computer Works 

1439 Post Rd. E., Liberty Plaza, Westport 
Instructional Systems Computers 
807 Hartford Rd., Manchester 
Technology Systems 
208 Greenwood Ave., Bethel 


D.C. 

The Program Store 

4200 Wisconsin Ave., N.W., Washington. D C. 

Florida 

Al Personal Computer 

178 Oxford Rd., Fern Park 

AMF Electronics 

11 146 N. 30th St., Tampa 

Boyd-Ebert Corporation 

1328 West 15th St., Panama City 

Computer Center 

6578 Central Ave., St. Petersburg 

Computer Junction 

5450 So. State Rd. 7, Ft. Lauderdale 

Computerland 

7374 S. Tamiami Trail, Sarasota 

Computerland of Ft. Lauderdale 

3963 N. Federal Hwy., Ft. Lauderdale 

Computerland of Jacksonville 

2777-6 University Blvd. W. Jacksonville 

Computerland of Tampa 

1520 E. Fowler Ave.. Tampa 

Computerland of West Palm Beach 

4275 Okeechobee Blvd., West Palm Beach 

Computer Shack 

3336 Beach Blvd., Jacksonville 

Computer System Resources Inc. 

3222 S.W. 35th Blvd., Gainesville 

Curtis Waters Enterprises 

236 Talbot Ave.. Melbourne 

Heath Kit Electronic 

4705 W. 16th Ave. Center, Hialeah 

HIS Computermation 

1295 Cypress Ave., Melbourne 

Ukatan Computer Store 

Airport Rd., Destin 

Williams Radio & TV Inc. 

2062 Liberty St., Jacksonville 
Your Basic Computer Store 
971 Seaway Dr., Ft. Pierce 
Georgia 

Atlanta Computer Mart 
Atlanta 

Computerland of Atlanta 
2423 Cobb Parkway, Smyrna 
Micro Computer Systems 
3104 E. Shadowlawn N.E., Atlanta 

Hawaii 

Computerland of Hawaii 
567 N. Federal Hwy., Honolulu 
Radio Shack Assoc. Store 
1712 S. King St., Honolulu 

Idaho 

Electronic Specialists 
8411 Fairview Ave., Boise 

Illinois 

Computerland 

4507 North Sterling. Peoria 

Computerland 

9511 N. Milwaukee Ave., Niles 
Computer Station 
3659 Nameoki Rd., Granite City 
Garcia & Associates 

203 No. Wabash Ave., Suite 1510, Chicago 
Midwest Micro Computers, Inc. 

708 S. Main St.. Lombard 

Indiana 

Computer Center of South Bend 
51591 US 31 North, South Bend 
Data Domain 

221 W. Dodds, Bloomington 
Fall Creek Electronics Store 
732 Center St., Pendleton 

Iowa 

Memory Bank 

1721 Grant St., Bettenborf 

Kansas 

Central Kansas Computers 
6 S. Broadway. Herington 

Maine 

Maine Computronics 
Intown Plaza. Bangor 
Mid Maine Computer Co. 

158 Turner St., Auburn 
Radio Shack 

315 Main Mall Rd., So. Portland 

Maryland 

Computer Age 

9433 Georgia Ave., Silver Springs 

Jack Fives Electronics 

4608 Debilen Circle, Pikesvllle 

The Comm Center 

9624 Ft. Meade Rd., Laurel 

Massachusetts 

ComputerCity 

175 Main St., Charlestown 

ComputerCity 

50 Worcester Rd., Framingham 


Computerland of Boston 
214 Worcester Rd., Wellesley 
Computer Packages Unlimited 
342 Boston Turnpike, Shrewsbury 
Land of Electronics 
1127 Western Ave., Lynn 
Lighthouse Computer Software 

14 Fall River Ave., Rehobath 
Mark Gordon Computers 

15 Kenwood St., Cambridge 
New England Electronics Co. 

679 Highland Ave., Needham 
Small Business System Group 
Main St., Dunstable 

The Computer Store 
120 Cambridge St., Burlington 
Tufts Radio & Electronics 
206 Mystic Ave., Medford 
Michigan 

Computer Center 

28251 Ford Rd., Garden City 

Computer Connections 

38437 Grand River, Farmington Hills 

Computerland of Grand Rapids 

2927 28th St. S.E., Kentwood 

Computerland of Southfield 

29673 Northwestern Hwy., Southfield 

Computer Mart 

560 W. 14 Mile Rd., Clawson 

Computer Room 

455 E. Michigan Ave., Kalamazoo 
Computronix Corp. 

423 S. Saginaw Rd., Midland 
Hobby House 

1035 W. Territorial Rd., Battle Creek 
Main Systems Inc. 

1161 No. Ballenger Hwy., Flint 

The Alternate Source 

1806 Ada, Lansing 

The Eight Bit Corner 

722 Evanston Ave., Muskegon 

TRI Country Electronics & Sound Center 

1537 North Leroy, Fenton 

Ye Olde Teacher Shoppe 

1823 Witmyre St , Ypsilanti 

Minnesota 

Computerland of Hopkins 
11319 Hwy F.. Hopkins 
Digital Den 
Burnsville Center 
Minnesota Software Inc. 

5422 Fisher St., White Bear Lake 
Zim Computers 

5717 Xerxes Ave., N. Brooklin Center 

Mississippi 

Dyer's, Inc. 

200 E. Main St., West Point 
Softwarehouse 
816 Foley St.. Jackson 
W. Vernon Foster Inc. 

816 Foley St.. Jackson 

Missouri 

Century Next Computers 

1001 E. Walnut, Columbia 

Comp-U-Trs Software Center 

51 Florissant Oaks Shopping Center, Florissant 

Software Shack 

16501 Greenwald Court, Belton 

Montana 

Intermountain Computer 

529 So. 9th St., Livingston 

Personal Computer 

121 Red Oak Dr., Carl Junction 

The Computer Store 

1216 16th St. W. #35, Billings 

Nebraska 

Computerland of Omaha 
11031 Elm St., Omaha 
Midwest Computer Co. Inc. 

8625 I St., Omaha 
Midwest Computer Co. Inc. 

4442 S. 84th St., Omaha 
Midwest Computer Co. Inc. 

4403 S. 87th St., Omaha 
Scottsbluff Typewriters Inc. 

1824 Broadway, Scottsbluff 

Nevada 

Century 23 

4566 Spring Mountain Rd.. Las Vegas 

New Hampshire 

Bitsnbytes Computer Center 

568 Pleasant St., Concord 

ComputerCity 

1525 S. Willow, Manchester 

Paul s TV 

Main St., Fremont 

Portsmouth Computer Center 

31 Raynes Ave., Portsmouth 


Radio Shack Assoc. Store 
Fairbanks Plaza, Keene 
Sturdivant and Dunn 
124 Washington St., Conway 

New Jersey 

Abe's TV Sales & Service 

College Town Shopping Center, Glassboro 

Computer Corner of NJ 

439 Rte. #23, Pompton Plains 

Computer Encounter 

2 Nassau St.. Princeton 

Computerland 

35 Plaza Rte. #4, W. Paramus 
Computer Mart of NJ 
501 Rte. 27, Iselin 
Crowley's 

Rd. #3, Whitehouse Station 
Dave’s Electronics 
Pennsville Shopping Ctr., Pennsville 
GHB Enterprises Inc. 

Rte. 38, Rudderaw Ave., Mapleshade 
Lashen Electronics Inc. 

21 Broadway, Denville 
Personal Computing Inc. 

51 Central Sq., Linwood 
Radio Shack/J&J Electronic 
Mansfield Shopping Ctr. 

Rt. 57 Allen Rd., Hackettstown 
The Bargain Brothers 
Glen Roc Shopping Center 
216 Scotch Road, Trenton 
The Computer Emporium 
Bldg. 103, Avenues of Commerce 
2428 Rte. 38. Cherry Hill 

New Mexico 

Autel Electronics Co. 

232 Wisconsin N.E., Albuquerque 
South West Computer Center 
121 Wyatt Drive. Suite 7, Las Cruces 
Thomas E. Carr Jeweler 
1300A Tenth St., Alamogordo 

New York 

Aristo Craft 

314 Fifth Ave., NYC 

Berliner Computer Center 

t02 Jericho Turnpk, New Hyde Park 

Bits & Bytes 

2800 Straight Rd., Fredonia 
Computer Corner 
200 Hamilton Ave.. White Plains 
Computer Era Corp. 

1570 3rd Ave., New York 
Computer Factory 
485 Lexington Ave., NYC 
Computer House, Inc. 

721 Atlantic Ave., Rochester 
Computerland of Nassau 
79 Westbury Ave., Carle Place 
Computerland of New York City 
58 W. 44th SI.. New York 
Computer World 

519 Boston Post Rd., Port Chester 
Comtek Electronics, Inc. 

2666 Coney Island Ave., Brooklyn 
Comtek Electronics, Inc. 

Staten Island Mall 
Store 220A, Staten Island 
Dlgibyte Systems Corp. 

31 E. 31st St.. New York 
80-Microcomputer Services 
118 Masten Ave., Cohoes 
Home Computer Center 
671 Monroe Ave., Rochester 
Mr. Computer 

Imp. Plaza, Rte. 9, Wappingers Falls 
Softron Systems 

308 Columbia Turnpike, Rensselaer 
The Computer Tree Inc. 

409 Hooper Rd., Endwell 
Upstate Computer Shop 
629 French Rd.. Campus Plaza, New Hartford 

North Carolina 

Byte Shop of Raleigh 

1213 Hillsborough St., Raleigh 

Sound Mill 

Slocum Shopping Ctr., Havelock 

Ohio 

Altair Business Systems, Inc. 

5252 North Dixie Dr., Dayton 
Astro Video Electronics 
504 E. Main St., Lancaster 
Cincinnati Computer Store 
4816 Interstate Dr., Cincinnati 
Computerland 
4579 Great Northern Blvd., 

N. Olmstead 
Computerland 

6429 Busch Blvd., Columbus 
Computerland 

1288 Som Rd., Mayfield Heights 
Computer Store of Toledo 
18 Hillwyck Dr., Toledo 
Forbees Microsystems Inc. 

35 N. Broad, Fairborn 
Microcomputer Center 
7900 Paragon Rd.. Dayton 
Micro-Mini Computer World 
74 Robinwood, Columbus 
21st Century Shop 
16 Convention Way. Cincinnati 
Universal Amateur Radio, Inc. 

1280 Aida Dr., Columbus 

Oklahoma 

Sounds, Etc. 

Hyw. 33, Watonga 
Vern Street Products 
114 W. Taft St., Sapjlpa 


tS 40 

Instant Software 

PETERBOROUGH, NEW HAMPSHIRE 03458 


Oregon 

Computerland of Portland 
12020 S.W. Main St., Tigard 
Computer Pathways Unlimited, Inc. 
2151 Davcor St. S.E., Salem 
TRS-80 Products Ltd. 

3520 S.E. Vineyard Rd., Portland 

Pennsylvania 

Artco Elect. 

302 Wyoming Ave., Kingston 
Artco Elect. 

Back Mountain Shopping Center, 

Shavertown 

Audio Mart 

518 Fifth Ave., New Brighton 
Computer Workshoppe 
3848 William Penn Hwy, Monroeville 
Computerland of Harrisburg 
4644 Carlisle Pike. Mechanicsburg 
Computerland of Pittsburgh 
5499 William Flynn Hwy., Gibsonia 
Erie Computer Co. 

2127 West 8th St.. Erie 
Mighty Byte Computer Center 
537 Easton Rd., Horsham 
Personal Computer Corp. 

24-26 West Lancaster Ave., Paoli 
Personal Computer Corp. 

Frazer Mall, Lancaster Ave., Frazer 

Rhode Island 

Computer City 

165 Angell St., Providence 

Digital World, Inc. 

329 Bald Hill Rd., Warwick 

South Dakota 

CB Radio Shack 

21st and Broadway, Yankton 

Tennessee 

ACS 

1 100 8th Ave. So., Nashville 
Computerlab 

671 S. Menden Hall Rd.. Memphis 
H & H Electronics Inc. 

509 N. Jackson St., Tullahoma 

Texas 

Computer Port 
2142 N. Collins. Arlington 
Houston Computer Tech 
5313 Bissonel, Bellarie 
Interactive Computer 
7620 Dashwood, Houston 
K.A. Elect. 

9090 Stemmons Frwy., Dallas 
Pan American Elect. Inc. 

1117 Conway, Mission 

Radio Shack Dealer 

21969 Katy Freeway, Katy 

The Compute Shop 

6353 Camp Bowie Blvd., Ft. Worth 

Waghalter Books Inc. 

3 Greenway Plaza E., Houston 

Utah 

DC Computer Co. 

191 1 West 70 South, Provo 

Quality Technology 

470 E. 2nd So., Salt Lake City 

Virginia 

Computer Works 
Rte. 6, Box 65A, Harrisonburg 
Home Computer Center 
2927 Virginia Beach Blvd. 

Virginia Beach 
Southside Radio Comm. 

135 Pickwick Ave., Colonial Heights 

Washington 

American Mercantile Co. Inc. 

2418 1st Ave. S., Seattle 
Byte Shop of Bellevue 
14701 N.E. 20th St.. Bellevue 
Computer Connection Inc. 

3100 NW Bucklin Hill Rd., Silverdale 
Computerland of South King Co. 

1500 S. 336 St., Suite 12, Federal Way 

Personal Computers 

S 104 Freva, Spokane 

Ye Old Computer Shop 

1301 G. Washington, Richland 

West Virginia 

The Computer Corner Inc. 

22 Beechurst Ave., Morgantown 

The Computer Store 

Municipal Parking Bldg., Charleston 

Wisconsin 

Byte Shop Of Milwaukee 

6019 West Layton Ave., Greenfield 

Computerland 

690 S. Whitney Way, Madison 
Computerworld 

3015 W. Wisconsin Ave., Appleton 
Magic Lantern Computed 
3313 University Ave., Madison 
Petted Microsystems 
4265 W. Loomis Rd., Milwaukee 

Wyoming 

Computer Concepts 
1104 Logan Ave., Cheyenne 

Puerto Rico 

The Microcomputer Store 
1568 Ave. Jesus T. Pinero 
Caparra Terrace 

Canada 

CANADIAN DISTRIBUTORS: 

Micron Distributing 

409 Queen St., W. Toronto, Ont. 

M5V 2A5 


Microcomputing, October 1980 167 




Video HARDCOPY 
For CP/M 


These machine-language programs give you printing power at the touch of a key. 


ccoo * 

SCRN 

EQU 


0CC00H ; VI DEO SCREEN ADDRESS 

0100 


0R6 

1 00H 

0100 C5 


PUSH 

B 

JSAVE REGS 

0101 E5 


PUSH 

H 


0102 2100CC 


LXI 


H,SCRN ; SCREEN ADDRESS 

0105 7E 

VPI : 

H0V 


A,H {LOOK FOR FIRST 

0106 FE20 


CPI 


' ' {NON-BLANK LINE. 

0108 C20F01 


JNZ 


VP2 

01 0B 23 


INX 


H 

010C C30501 


JMP 


VPI 

01 OF 7D 

VP2: 

NOV 


A,L 

0110 E6C0 


ANI 


1 1 OOOOOOB {SET TO LINE BEGINNING 

0112 6F 


NOV 


L, A 

0113 7D 

VP3: 

NOV 


A,L JPRINT REST OF SCREEN 

01 14 E63F 


ANI 


001 11 11 IB ;CHECK END OF LINE 

0116 C22F01 


JNZ 


VP4 

011? CD4101 


CALL 


CRLF 

011C E5 

VPS: 

PUSH 


H ; CHECK FOR REST OF 

01 1 D 7E 

VP6: 

NOV 


A,M ;SCREEN BLANK 

01 IE FE20 


CPI 


' ' 

0120 C22E01 


JNZ 


VP7 

0123 23 


INX 


H 

0124 7C 


MOV 


A,H 

0125 FEB0 


CPI 


0D0H ;END OF SCREEN 7 

0127 C21D01 


JNZ 


VP6 ;not YET. 

012A El 


POP 


H ; RESTORE HL REGISTERS 

012B C33D01 


JNP 


VP8 {RETURN TO CP/M. NO MORE TO PRINT 

012E El 

VP7: 

POP 


H {RESTORE HL REGISTERS 

012F 4E 

VP4: 

NOV 


C,N 

0130 CD4C01 


CALL 


PRINTER 

0133 23 


INX 


H 

0134 7C 


NOV 


A,H 

0135 FED0 


CPI 


ODOH 

0137 C21301 


JNZ 


VP3 

013A CD4101 


CALL 


CRLF 

01 3D El 

VP8: 

POP 


H {RESTORE REGS 

013E Cl 


POP 


B 

013F C7 


RST 


0 {RETURN TO CP/N 

0140 C9 


RET 



0141 0E0D 

CRLF 

MVI 


C.ODH {CR 

0143 CD4C01 


CALL 


PRINTER 

0146 0E0A 


NVI 


C,0AH {LF 

0148 CD4C01 


CALL 


PRINTER 

014B C? 


RET 



014C 3A0AFE 

PRINTER: 


LDA OFEOOH+OAH 

014F E601 




ANI 01 

0151 CA4C01 




JZ PRINTER 

0154 7? 




MOV A, C 

0155 3202FE 




STA 0FE0OH+2 

0158 C9 




RET 

015? 


END 




Listing 1. Video HARDCOPY routine. 


Glenn Stok 
PO Box 501 
Woodside NY 11377 

H ow often have you wanted 
to keep a screen of infor- 
mation permanently? This de- 
sire has occurred to me many 
times. So I decided to add a 
hard-copy feature to my CP/M 
system. 

In this article I will explain the 
method, show you the source 
listing and explain how to incor- 
porate it into your CP/M system 
or your monitor. The only hard- 
ware requirement is that you 
have a memory-mapped video 
display and a printer. If you 
don’t have CP/M, you can still 
use my HARDCOPY routine by 
making it part of your monitor 
(see Listing 1). 

If you have a Z-80 CPU, you 
may find Listing 2 helpful. It is 
the same HARDCOPY routine 
written in Z-80 code. I have re- 
stricted this to relative address- 
ing so it is relocatable. All you 
have to do is patch the machine 
code of Listing 2 anywhere in 
your monitor and patch branches 


to and from it for I/O. The CALL 
to your PRINT routine has to be 
patched in three places. Make 
sure that you correct the ad- 
dress in the CALL CRLF instruc- 
tions (the Z-80 does not have rel- 
ative addressable CALL instruc- 
tions). Listing 1 is entirely in 
8080 code, so it will run on either 
CPU. 

Adding Hard Copy 

We don’t want the request for 
a hard copy to change the 
screen. Since we want to copy 
the screen, a command that 
echoes to the screen will be 
messy. We also want to have the 
option of making a hard copy 
even when running another pro- 
gram. As long as it looks at the 
keyboard once in a while, this 
can be done. This is feasible if 
all I/O goes through CP/M or 
your monitor. In this case, we 
are only concerned about I/O 
with the keyboard. 

With this situation we can 
have the “keyboard read” rou- 
tine check for a control key. If it 
is not the proper key, then pro- 
cess normally. If it is the key that 


168 Microcomputing, October 1980 


we have chosen for a hard-copy 
request, then the logic will 
branch to the HARDCOPY rou- 
tine before returning to the call- 
ing program. 

If you have CP/M and under- 
stand the workings of your 
CBIOS (the Basic I/O Section, 
Converted for your system), you 
may be saying, “But I don’t have 
enough room at the top to add a 
routine to my CBIOS!” 

Well, yes you do! And here is 
how to get more room: Move the 
entire CP/M system down one 
kilobyte with your MOVCPM 
command. 

For instance, say you have 
24 K. Use EDIT to change the 
EQU for system size in both your 
CBIOS and your boot loader to 
23K. After you add the HARD- 
COPY routine to your CBIOS, as- 
semble both the boot loader and 
the CBIOS. Then follow your nor- 
mal procedures with your MOV- 
CPM command and SYSGEN to 
create a new version for 23K 
with hard-copy capabilities. 

If you only have a 16K system, 
you can’t SYSGEN a 15K system 
because 16K is the minimum for 
CP/M. But try assembling your 
CBIOS at 16K with the HARD- 
COPY routine in it. Maybe you 
will not go beyond your avail- 
able RAM (i.e., address 3FFF). If 
you are close, then maybe you 
can cut some bytes by changing 
some logic of other parts of your 
CBIOS. 

Source Listing 

The source listing of Listing 3 




Listing 3. CBIOS source listing. 


001? = 

MSI ZE 

EQU 

23 

;SIZE OF 

OPERATING SYSTEM IN KILOBYTES 

F 300 = 

CONTROLLER 

EQU 

0F80QH 



FCOO * 

BUFF 

EQU 

CONTROLLERMOOH 


5A00 = 

LOCATION 

EQU 

MS I ZE * 1 0 

24-512 

;0RG LOCATION FOR THE CBIOS 

5AOO 

0RG 

LOCATION 

; BASE OF 

BIOS IN 23K SYSTEM 

0003 = 

I0BYTE 

EQU 

0003H 

; I0BYTE 

FOR 1/0 CONTROL 


< SECTION NOT SHOWN > 


1C00 


CBASE 

EQU 

(HSIZE- 16)*1024 

;BIAS FOR SYSTE MS GREATER THAN 

4500 

= 

CPM B 

EQU 

CBASE+2900H 


4006 


BOOS 

EQU 

CBASE+31 06H 


4480 

= 

CCPH 

EQU 

CPHB-1 28 


1500 

= 

CP ML 

EQU 

4-CPHB 


5 A00 

C3125B 


JHP 

COLDBOOT 


5A03 

C3B95A 

EB00T: 

JNP 

UB00T 


5A06 

C3555B 


JHP 

CONSTAT 


5A09 

C3625B 


JHP 

C0NIN 


5A0C 

C3725C 


JHP 

C0N0UT 


5 A0F 

C37B5B 


JHP 

LIST 


5 A 1 2 

C3835B 


JHP 

PRINTER 


5 A 1 5 

C3955B 


JHP 

READER 


5A1 8 

C32D5A 


JHP 

H0ME1 

; HOME 

5 At B 

C3335A 


JHP 

TEHPSELDSK 

JSELDSK 

5A1E 

C3515A 


JHP 

SETTRK1 

; SETTRK 

5A21 

C30CF8 


JNP 

SETSEC 

; SETSEC 

5A24 

C30FF8 


JHP 

SETDHA 

; SETDHA 

5A27 

C3985B 


JHP 

READ 

;diskread 

5A2A 

C3B75B 


JHP 

URITE 

JDISKURITE 


< SECTION NOT SHOUN > 


COLDBOQT: ;D0 THIS ONLY ON COLD START 


5B1 2 

3E09 


HVI 

A,00001001 B 

; ASSIGN INITIAL 

5B1 4 

320300 


STA 

I0BYTE 



5B17 

AF 


XRA 

A 



5B1 8 

D3C8 


OUT 

0C8H 

JINIT. 

SCREEN 

5B1 A 

CDAA5C 


CALL 

CLRCRT 

;CLEAR 

THE SCREEN 

5 BID 

211 15D 


LXI 

H, SIGMON 


5B20 

CD185C 


CALL 

PRHSG 

; P R I NT 

SIGN0N MESSAGE 


BOOT: 








< SECTION NOT SHOUN > 


5 B52 

C30045 


JHP 

CP M B 






C0NIN 

ROUTINE CHECKS FOR FUNCTION KEYS 




IF NOT 

A FUNCTION, THEN 

IT RETURNS THE 




KEY IN 

REGISTER 

'A'. 


5B62 

CD555B ( 

:0NIN: 


CALL 

CONSTAT 


5B65 

CA625B 



JZ 

C0NIN 


5B68 

3A02FE 



LDA 

URC0NT +2 

5B6B 

E67F 



ANI 

7FH 



Listing 2. HARDCOPY routine in Z-80 code. 

0125 

0126 

El 

180E 


POP 

JHPR 

H 

VP8 

; RESTORE HL REGISTERS 
{RETURN TO CP/H. 











{NO MORE TO PRINT 




ADDRESSED AT HEX 100 FOR STAND ALONE 

0128 

El 

VP7: 

POP 

H 

{RESTORE HL REGISTERS 




TEST 

UNDER CP/N. 

0129 

4E 

VP4: 

NOV 

C.N 







012A 

CD 0145 


CALL 

PRINT 


ccoo 


SCRN 

= 

OCCOOH ; VIDEO SCREEN ADDRESS 

012D 

23 


INX 

H 





. PADS ; CREATE INTEL HEX FILE 

01 2E 

7C 


NOV 

A,H 


0100 



.L0C 

1 00H 

012F 

FED0 


CPI 

ODOH 


0100 

C5 


PUSH 

B ; SAVE REGS 

0131 

20DE 


JRNZ 

VP3 


0101 

E5 


PUSH 

H 

0133 

CD 013A 


CALL 

CRLF 


0102 

21 CCOO 


LXI 

H f SCRN ; SCREEN ADDRESS 

0136 

El 

VP8: 

POP 

H 

{RESTORE REGS 

0105 

7E 

VP 1 : 

NOV 

A,H ; LOOK FOR FIRST 

0137 

Cl 


POP 

8 


0106 

FE20 


CPI 

' ' ;non-blank LINE. 

0138 

C7 


RST 

O 

{RETURN TO CP/H 

0108 

2003 


JRNZ 

VP2 

0139 

C9 


RET 



01 0A 

23 


I NX 

H 

013A 

0E0D 

CRLF: 

NVI 

C,0DH 

{CR 

01 OB 

1 8F8 


JHPR 

VP1 

013C 

CD 0145 


CALL 

PRINT 


01 0D 

7D 

VP2: 

H0V 

A,L 

01 3F 

0E0A 


NVI 

C,OAH 

;lf 

010E 

E6C0 


ANI 

1 1 OOOOOOB {SET TO LINE BEGIN 

0141 

CP 0145 


CALL 

PRINT 


0110 

6F 


NOV 

L, A 

0145 

3A FE0A 

PRINT 

: LDA 

0FE00H+OAH 

0111 

7D 

VP3: 

NOV 

A,L {PRINT REST OF SCREEN 

0148 

E601 



ANI 

01 

0112 

E63F 


ANI 

001111118 ; CHECK END OF LINE 

014A 

28F9 



JRZ 

PRINT 

0114 

2013 


JRNZ 

VP4 

014C 

79 



NOV 

A,C 

0116 

CD 0 1 3 A 


CALL 

CRLF 

014D 

32 FE02 



STA 

OFEOOH+2 

0119 

E5 

VPS: 

PUSH 

H ;CHECK FOR REST OF 

0150 

C9 



RET 


01 1 A 

7E 

VP6: 

NOV 

A,N ;SCREEN BLANK 




.END 



0118 

FE20 


CPI 

' ' 







01 ID 

2009 


JRNZ 

VP7 

CRLF 

01 3A 

PRINT 

0145 

SCRN 

CCOO 

01 IF 

23 


INX 

H 

VP 1 

0105 

VP2 

01 0D 

VP3 

0111 

0120 

7C 


H0V 

A,H 

VP4 

0129 

VP5 

0119 

VP6 

01 1 A 

0121 

FED0 


CPI 

0D0H ; END OF SCREEN? 

VP7 

0128 

VP8 

0136 

. BLNK . 0000:03 X 

0123 

20F5 


JRNZ 

VP6 ;not YET. 

.DATA. 

0000* X 

.PROG. 

0000' 

X 



Microcomputing, October 1980 169 


Listing 3 continued. 







5B6D 

FE60 




CPI 

;tab key 

5B6F 

C2755B 




JNZ 

MAYBHARD 

5 B? 2 

3E09 




MVI 

A, 09 ; TAB CODE 

5B74 

C9 




RET 


5B75 

FE7E 

MAYBHARD: 

CPI 

7EH JHARD COPY KEY 

5B77 

CO 




RNZ 


5B78 

C3255C 




JMP 

HARDCOPY JG0 DO HARDCOPY 







; T HE N GET THE CONSOLE KEY. 

5B7B 

3A0300 

LIST: 


LDA 

I0BYTE 

5B7E 

E640 




ANI 

01 OOOOOOB ; CHECK ASSIGNMENT 

5B80 

C27A5C 




JNZ 

CRT0UT 

5B83 

3A0AFE 

PRINTER: 

LDA 

URCONT+OAH 

5B86 

E601 




ANI 

01 

SB88 

CA835B 




JZ 

PRINTER 

5B8B 

79 




MOV 

A,C 

5B8C 

FE5C 




CPI 

'V ;holb printer? 

5B8E 

CA625B 




JZ 

CONIN JC0NIN UILL RELEASE ON ANY KEY 

5B91 

3202FE 




STA 

URCDNT+2 

5B94 

C9 




RET 


5B95 

3E 1 A 

READER: 


MVI 

A, 1 AH ;F ORCE EOF FOR DUMMY READER 

5B97 

C9 




RET 






SECTION NOT SH0UN 



PRHSG: 

JPRINT 

MESSAGE AT II, L TILL 0 

5C1 8 

7E 



MOV 

A,M 


5C1 9 

B7 



ORA 

A 

; ZERO 7 

5C1 A 

C8 



RZ 



GCIB 

EZ 



PUSH 

H 

JMORE TO PRINT 

5C1C 

4F 



MOV 

C , A 


5C1B 

CD725C 



CALL 

C0N0UT 


5C20 

El 



POP 

H 


5C21 

23 



1NX 

H 


5C22 

C3185C 



JrtP 

1-RrlSG 






VIDEO 

HARD COPY 

ROUTINE 





URITTEN BY GLENN STOK 

CCOO 

= 


3CRN 

EQU 

0CC00H 

; VIDEO SCREEN ADDRESS 

5C25 

C5 

HARDCOPY: PUSH 

B 

; SAVE REGS 

5C26 

E5 



PUSH 

H 


5C27 

21 00 C C 



LX I 

H,SCRN 

; SCREEN ADDRESS 

5C2A 

7E 

UP 1 : 

H0V 

A,M 

; L 00 K FOR FIRST 

5C2B 

FE20 



CPI 

' * 

; NON -BLANK LINE. 

5C2D 

C2345C 



JNZ 

VP2 


5C30 

23 



I NX 

H 


5C31 

C32A5C 



JMP 

VP1 


5C34 

7B 

VP 2 : 

MOV 

A,L 


5C35 

E6CG 



ANI 

1 1000000B ; SET TO LINE BEGINNING 

5C37 

6F 



H0V 

L, A 


5C38 

7D 

VP3: 

MOV 

A,L 

; PRINT REST OF SCREEN 

5C39 

E63F 



ANI 

001 1 1 1 1 1B JCHECK END OF LINE 

5C3B 

C2545C 



JNZ 

VP4 


5C3E 

CD675C 



CALL 

CRLF 


5C4 1 

E5 

VP5: 

PUSH 

H 

JCHECK FOR REST OF 

5C42 

7E 

VP6: 

MOV 

A,M 

ISCREEN BLANK 

5C43 

FE20 



CPI 



5C45 

C2535C 



JNZ 

VP7 


5C48 

23 



1NX 

H 


5C49 

7C 



MOV 

A,H 


5C4A 

FED0 



CPI 

ODOH 

;END OF SCREEN? 

5C4C 

C2425C 



JNZ 

VP 6 

JNQT YET. 

5C4F 

El 



POP 

H 

; RESTORE HI REGISTERS 

5C50 

C3625C 



JHP 

VPS 

jRETURN . NO MORE TO PRINT 

5C53 

El 

VP7: 

POP 

H 

JREST0RE NEXT LINE TO PRINT 

5C54 

4E 

VP4: 

MOV 

C,M 


5C55 

CD835B 



CALL 

PRINTER 


5C58 

23 



INX 

H 


5C59 

7C 



MOV 

A, H 


5C5A 

FEB0 



CPI 

ODOH 


5C5C 

C2385C 



JNZ 

VP3 


5C5F 

CD675C 



CALL 

CRLF 


5C62 

El 

VP8: 

POP 

H 

JRESTORE REGS 

5C63 

Cl 



POP 

B 


5C64 

C3625B 



JMP 

CONIN 

;N0U GO GET CHARACTER. 

5C67 

0E0B 

CRLF 

MVI 

C,0DH 

;cr 

5C69 

CD835B 



CALL 

PRINTER 


5C6C 

0E0A 



MVI 

C,0AH 

;lf 

5C6E 

CD835B 



CALL 

PRINTER 


5C71 

C9 



RET 






VIDEO CONTROL FOR CRT 

- ROUTINE FOR CP/M BIOS MODULE 




URITTEN BY 

GLENN STOK 

, STOK COMPUTER INTERFACE 

004E 

= 

C 

:urs 

EQU 

4EH 

;REL. CURSOR L0C. STORAGE 

00D0 

= 

SEND 

EQU 

ODOH 

; E ND OF SCREEN PAGE. 

0040 

= 

LINE 

EQU 

64 

;LINE LENGTH 

0020 

= 

BLANK 

EQU 

20H 

; 6 LANK 

5C72 

3A0300 

C0N0UT: 

LDA 

I0BYTE 


5C75 

E601 



ANI 

00000001 B JCHECK 1/0 ASSIGNMENT 

5C77 

CA835B 



JZ 

PRINTER 








Program continues. 


is my CBIOS. Study the CONIN 
routine, which reads the key- 
board and checks for function 
keys. Note that I wrote the rou- 
tine to look for a tilde (~) key. 
This is hex 7E. You can choose 
another, but make sure you will 
never need it for anything else. 
This key becomes a “function 
key.” Maybe your keyboard has 
function keys that you can use. 

Implementation 

Now look at the HARDCOPY 
routine in my CBIOS. Note the 
EQU for the screen address of 
my memory-mapped VDM. Re- 
place this with the proper ad- 
dress for your system. 

Most memory-mapped video 
has 16 lines and 64 characters 
per line. This is because this 
size conveniently uses a IK 
block of memory (16 times 64 is 
1024, or IK). If your video is not 
16 by 64, then this will consider- 
ably change the logic I have 
used in the routine. But maybe 
you would like to play with it. 

Anyway, if you have a 16 by 64 
display, let’s continue. Insert 
the code of Listing 1 or 2 into 
your CBIOS and put the FUNC- 
TION KEY check in your present 
“keyboard read” routine. Jump 
to the HARDCOPY routine if the 
key matches. Correct the call to 
the PRINTER routine in Listing 1 
or 2. You should call your PRINT- 
ER routine in your CBIOS. 

The HARDCOPY routine 
saves and restores all affected 
registers so as not to interfere 
with any running programs. It 
will start its transfer to the print 
device at the beginning of the 
first non-blank line. It will print 
up to and including the last non- 
blank line. 

To do this I have it check if the 
rest of the screen is blank each 
time it starts a new line. Even 
though this is redundant, it does 
not slow down the printer be- 
cause the printer, being 
mechanical, is even slower. The 
alternative is to search, once 
and for all, before the start and 
save the ending address to com- 
pare with. I decided against this 
so as not to create an extra 
burden for anyone who wants to 
put the routine in a PROM chip. 

The ASCII codes recognized 
by video boards sometimes dif- 
fer from the codes recognized 


170 Microcomputing, October 1980 


MODEL II 



AUTHORIZED 

TRS- 80 S 


MODEL I 


AUER A301 


26-4002 

64K 1 Drive 
$3499.00 

MODEL III 


' > 




\ 


26-1061 4KI 

. . . $630.00 

26-1062 16K III 

.... 900.00 

26-1063 32K III 


2-Drives, RS232 

. . . 2246.00 

: 



COMPUTER SPECIALISTS 

26-1056 16K Level II System with Keypad- $670.00 

26-1145 RS-232 Board 84.00 

26-1140 "O" K Interface 249.00 

26-1141 "16" K Interface 365.00 

26-1142 "32" K Interface 476.00 

26-1 160 Mini Disk • Drive O 424.00 

26-1 161 Mini Disk • Additional 424.00 

26-1154 Lineprinter II 720.00 

26-1 156 Lineprinter III 1799.00 

26-1180 Voice Synthesiser 339.00 

26-1181 VOXBOX 145.00 

26-1104 Factory Upper/Lower 

Case Modifcation Installed 70.00 

26-1506 Scripsit • Tape 60.00 

26-1563 Scripsit - Disk 85.00 

NOTE: Call for availability of VIDEO TEX, Model III. Color, 
and other new products. 



26-1054 

4K Level II 
$552.00 

COLOR 




ALL OTHER R.S. SOFTWARE 
FURNITURE, STANDS, CABLES 
AND ACCESSORIES DEDUCT 
10% FROM CATALOG PRICE 


26-3001 4K $360.00 

26-3002 16K 540.00 

26-3010 Color Video 360.00 

26-1206 Recorder 54.00 

26-3008 Joysticks 22.50 


CEnTROniC5 

Fast 100 CPS Centronics 

730 Printer $675.00 

Text Quality Centronics 

737 Printer $850.00 


Novation Cat Modem . .$149.00 
CCA Data Management 

System 72.00 

Adventure Games 

Games 1 -9 each 1 4.00 


s 


Acorn 

Software 
Products, Inc. 


Pocket Computer 


Model II Cobol Compiler 
$360.00 

Cobol Run Time Package 
$36.00 



jOaOBB 

_ __ jooaaa 

5 W GJG3 CD CDC3 CDCD 00000 

CD CD G3 C3 CP CD IB (33 C3D & Q a a 


26-3501 1.9K P.C $225.00 

26-3503 Cassette l/F 45.00 

14-812 Recorder 72.00 


GAMES: 

Alien Invasion $9.00 

Stock Market 9.00 

Star Trek 9.00 

Block ‘Em 9.00 

Ting-Tong 9.00 

UTILITIES: 

System Savers 14 .00 

EDUCATION: 

Language Teacher 18.00 

FREE: PRICE LIST 
UPON REQUEST 


1-800-841-0860 Toll Free Order Entry 

t/ 1 00 

MICRO MANAGEMENT SYSTEMS. INC. 


No Taxes on Out Of 
State Shipments 


Immediate Shipment 
From Stock on Most Items 


DOWNTOWN PLAZA SHOPPING CENTER 
115 C SECOND AVE. S.W. 

CAIRO, GEORGIA 31728 

(912) 377-7120 Ga. Phone No. 


*TRS-80 it a registered trademark of the Tandy Corp. 


Full Factory Warranty 
on All Items Sold. 

Largest Inventory 
In the S.E. U.S.A. 


i/* Reader Service index— page 241 


Microcomputing , October 1980 171 




Listing 3 continued. 


5C7A 

2A4E00 

CRTOUT : 

LHLB 

CURS 


5C7D 

EB 


XCHG 


{PUT RELATIVE CURSOR IN D 

5C7E 

2100CC 


LXI 

H.SCRN 

;PUT SCREEN ADDRESS IN HL 

SC81 

19 


DAD 

I' 

;get absolute cursor loc. 

5C82 

41 


HOV 

B,C 


5C83 

7E 


MOV 

A,M 


5C84 

E67F 


ANI 

7FH 

; TURN OFF CURSOR 

5C86 

77 


MOV 

H, A 


5C87 

78 


MOV 

M 

;CHECK FOR CONTROL CHARS. 

5C88 

FEOC 


CPI 

OCH 

{ERASE SCREEN 

5C8A 

CAAA5C 


JZ 

CLRCRT 


SC8D 

FE07 


CPI 

07 


5C8F 

CAA43C 


JZ 

RINGBELL 


5C92 

FE08 


CPI 

08 

; CTL H (BACK SPACE) 

5C94 

CABC5C 


JZ 

B3 


5C97 

FEOA 


CPI 

OAH 

JUNE FEED 

5C99 

CAC15C 


JZ 

LF 


5C9C 

FEOD 


CPI 

ODH 

{CARRIAGE RETURN 

5C9E 

CAF35C 


JZ 

CR 


5CA1 

C3FB5C 


JhP 

OTHER 

{PUT OUT ANY OTHER CHAR. AS IS. 

SCA4 

0E07 

RINGBELL: MVI 

C,Q7 


5CA6 

CB835B 


CALL 

PRINTER 


5CA9 

C9 


RET 



5CAA 

2100CC 

CLRCRT 

LXI 

H,SCRN 

{CLEAR THF SCREEN 

5CAD 

3620 

CLR 

MVI 

M, BLANK 

{BLANK OUT THIS LOCATION. 

SCAF 

23 


INX 

H 


5CB0 

7C 


MOV 

A,H 


5CB1 

FEDO 


CPI 

SEND 

{END OF SCREEN 7 

5CB3 

C2AD5C 


JNZ 

CLR 


5CB6 

210000 


LXI 

H,0 

{HOME THE CURSOR. 

5CB9 

C3015B 


JHP 

PUT 


5CBC 

IB 

BS 

DCX 

D 


5CBD 

EB 


XCHG 



5CBE 

C3015D 


JMP 

PUT 


5CC1 

214000 

LF 

LXI 

H,LINE ; 

{LINE FEED 

5CC4 

19 


DAD 

D 

{ADD LINE LENGTH TO REL. CURSOR 

5CC5 

CDCB5C 


CALL 

SCROLL ; 

{DO SCROLL IF END OF SCREEN 

5CC8 

C3015B 


JHP 

PUT 


5CCB 

7C 

SCROLL 

HOV 

A,H 


5CCC 

FE04 


CPI 

4 ; 

{CHECK IF PAST THE SCREEN AREA. 

5CCE 

B8 


RC 


{DO NOTHING IF NOT 

5CCF 

E5 


PUSH 

H 



by printers. Most printers re- 
spond to true ASCII codes, but 
some video boards have graph- 
ics abilities. To tell printable 
characters from graphics, these 
boards may use the high-order 
bit (usually for parity) to trigger 
the graphics representation of a 
byte. To print a printable charac- 
ter, this bit may have to turn on 
or off. You could add an 01 or 


ANI to OR or AND, respectively, 
each byte before calling your 
PRINTER routine. 

Check if this is necessary in 
your case. VDM does not require 
this, but the Polymorphic video 
display may have to have the 
parity bit shut off (ANI 7FH) for 
some printers to recognize the 
byte as the proper character. As 
for graphics, you’ll have to sub- 


5CD0 1100CC 


LXI 

D,SCRN {START SCROLL FROH THE TOP 

5CD3 2140CC 


LXI 

H,SCRN+LINE {SET HL TO SECOND LINE 

5CD6 7E 

SUAP 

MOV 

A,H {GET CHAR. 

5CD7 23 


INX 

H 

5CD8 EB 


XCHG 

{GET ADDRESS OF LINE ABOVE. 

5CD9 77 


HOV 

H, A {PUT THE CHAR. THERE 

5CDA 23 


INX 

H 

5CDB EB 


XCHG 


5CDC 7C 


MOV 

A,H 

5CDD FEDO 


CPI 

SEND {IS SCREEN FINISHED? 

5CDF C2D65C 


JNZ 

SUAP 

5CE2 EB 


XCHG 


5CE3 0620 


HVI 

B, BLANK {BLANK THE LAST LINE 

5CE5 70 

LAST 

HOV 

H,B 

5CE6 23 


INX 

H 

5CE7 7D 


HOV 

A, L 

5CE8 FEOO 


CPI 

0 

5CEA C2E55C 


JNZ 

LAST 

5CED El 


POP 

H {GET BACK REL. CURSOR 

5 CEE 11C0FF 


LXI 

D.O-LINE 

5CF1 19 


DAD 

D {HOVE UP ONE LINE. 

5CF2 C9 


RET 


5CF3 3EC0 

t 

CR 

HVI 

A, 1 1 000000B {GO TO BEGINNING OF LINE. 

5CF5 A3 


ANA 

E 

5CF6 5F 


HOV 

E, A 


FEATURES INCLUDE: 


80 COLUMN LOW COST IMPACT PRINTER 


• Uses Standard Typewriter Ribbon 
(Model 101B-80) 

• Built-In Power Supply 

• 5x7 Dot Matrix Character Generator or 
10 x 7 or 10 x 14 Dot Matrix 

• Standard 96 ASCII Character Font 

• Upper and Lower Case Printing 

• Up to 88 Characters Per Line 

• Single Line Print Rate Is 

**110/160 CPS 

• Average Print Rate Is 

**55/60 CPS For Ten Lines 

• Graphics Capability With Extended 
Character Modes 

• Programmable With 32 System Level 
Software Commands 

• Standard Parallel and Serial Interface 

• Reset Interface 

• Baudrate Select From 110 to 9600 

• Manual Paper Advance (Model 101 B-80) 

• Manual Selftest 

• Adjustable Tractor Width From 1 to 9V2 
Inches (Model 101 B-80) 

** Model 101A-40 & 101 B-80 Respectively 

^ 271 



$495 Kit, 101B-80KE $545 Assembled & Tested 101B-80E 


COOSOL, INC. po BOX 743, ANAHEIM, CA 92805 (714) 545-2216 7 Days a Week 


172 Microcomputing, October 1980 


stitute nonprintable characters 
with a printable one. My VDM 
doesn’t have graphics, so I had 
no need for this routine. Also 
note that if a blank is not repre- 
sented by a hex 20 with your vid- 
eo board, then you’ll have to cor- 
rect the CPI ’ ’ instructions in 
listings 2 and 3. 

I’ll be glad to help with any 
questions, if you help me by in- 
cluding a stamped, addressed 
envelope. 

Enjoy the new power you now 
have at the touch of a key. But 
be sure that there’s paper in that 
printer! ■ 


5CF7 

EB 


XCHG 




5CF8 

C3015D 


JHP 

PUT 



5CFB 

70 

OTHER 

MOV 

H,B 

JDISPL AY CHAR. 


5CFC 

13 


INX 

D 

; I N C R . CURSOR 


5CFD 

EB 


XCHG 




5CFE 

CDCB5C 


CALL 

SCROLL 

JSCR0LL IF NECESSARY 


5 D0 1 

7 C 

PUT 

MOV 

A, H 

; PUT CURSOR IN NEU LOCATION ON 

SCREEN 

5 DO 2 

E603 


ANI 

3 

;MAKE RELATIVE AGAIN 


5 DO 4 

67 


MOV 

H, A 



5 DOS 

224E00 


SHLD 

CURS 

JUPDATE CURSOR 


5 DO 8 

1100CC 


LXI 

D, SCRN 



5 DOB 

1? 


DAD 

D 



5D0C 

7 E 


MOV 

A,M 

;GET CHAR. UNDER CURSOR 


5 DO Ii 

F680 


ORI 

80H 

;SET CURSOR ON 


5D0F 

77 


MOV 

M, A 



5D10 

C9 


RET 




5D11 

ODOAOAQA 

SIGN0N : 

DB 

0DH,0AH, 

,0AH,0AH 


5D15 

2020202020 


DB 


ST0K CP/M SYSTEM - VERSION 

5/10/79' 

5D42 

ODOAOO 


DB 

0 D H , 0 A H , 

,0 


5D45 



END 





NEW... 

S-100 A/D and 
TIMER BOARD 

Tecmar s new A/D and Timer 
Board is designed to meet sophis- 
ticated data acquisition needs. The 
board can accommodate various 
A/D modules providing options 
such as 1 2, 1 4. or 1 6 bit accuracy; 
100 MHz throughput; variable 
ranges and gains. It contains a 
powerful timer circuit (AMD 95 1 3) 
which can start A/D conversion 
and can also be used independ- 
ently for time of day. event count- 
ing, frequency shift keying and 
many other applications. 


S-100 TRS-80 1 

PET 2 KIM 2 APPLE 

(available soon) 

► 12 Bit A/D 

D/A 12 Bit ◄ 

► High Speed 

High Speed ◄ 

► 8 Ch. Differential 

4 Channel ◄ 

► 16 Ch. Single-ended 

► Each A/D Module $495 

Each D/A Module $395 ◄ 


TRS 80 or PET expansion board , power supply, and enclosure $200. 
Kim expansion board and power supply $150. 



— r 

^13 


EC| 

l» H ^ 


INC. 


TECMAR, INC. 

( 216 ) 382-7599 


234 14 Greenlawn • Cleveland, OH 44 1 22 


S-100 BOARDS 


Real Time 

$850 

Video Digitizer & Display 

8086 CPG 

W/vectored interrupts 

$450 

RAM 

8Kxl6/16Kx8 

$395 

8086 

PROM-I/O 

$495 

Serial and 
Parallel I/O 

$350 

Parallel I/O 
& Timer 

$350 


Complete Systems 
Also available 

1 Reg. Trademark of Tandy Corp. 
2 Reg. Trademark of Commodore 


TDC-ftn t rupi TT 

JL JO CHJ JuXi 111* JL JL 

COMPLETE 
SYSTEM 

■ 


Now the world’s most popular micro- 
computer, with 16K of memory and 
Level II basic for only $685, complete. 

We accept check, money order or phone 
orders with Visa or Master Charge. 

(Shipping costs added to charge orders). 

Disk drives, printers, peripherals, soft- 
ware and games...you name it, we’ve got 
it (Both Radio Shack and other brands). 

Write or call for our complete price list. 

C&S ELECTRONICS MART. 

vS 79 


AUTHORIZED fltaAlf 

DEALERSHIP RcIClIO S IlCldf 


32 E. Main Street • Milan, Michigan 48160 • (313) 439-1508 




Reader Service index— page 241 


Microcomputing, October 1980 173 




Bridging the 1 pF 
To 100,000 uF Gap 


Take the guesswork out of capacitor values 
with this inexpensive digital capacitance meter. 


Robert J. Stetson 
Applications Engineer 
BASF Systems 
Crosby Dr. 

Bedford, MA 01730 

D efective capacitors can 
smoke expensive compo- 
nents in your projects and 
cause all kinds of general grief. 
Nothing makes our systems act 
more demon possessed than a 
problem capacitor deep in the 
bowels of an otherwise perfect 
machine. Before you call in the 
exorcist, build this digital ca- 
pacitance meter and start veri- 
fying capacitors before they go 
into the system. Later, if they 
fail, you will have the means to 
root them out. 


The digital capacitance meter 
is not only capable of verifying 
the quality of a known value of 
capacitor, but also can unmask 
that unmarked capacitor we’ve 
all been known to wonder about 
from time to time. 

The limits of this unit span 
from 1 pF through 100,000 uF. 
Needless to say, it accommo- 
dates all of my needs. The cost 
is low, too, right around $35. 
Considering all the unit can ac- 
complish in the way of testing a 
long range of capacitance val- 
ues, it’s quite easy to use. 

In the short time I’ve had my 
unit, all the capacitors in my 
parts cabinet have been test- 
ed, and the defective ones 


E3 = x times 10 3 
E2 = x times 10 2 
El = x times 10 
E0 = x times 0 
E-1 = x times 10" 1 
E-2 = x times 10* 2 
E-3 = x times 10' 3 
E-4 = x times 10* 4 
E-5 = x times 10' 5 
E-6 = x times 10' 6 


(The value given here is correct as shown in the readout.) 
(The value given here is correct as shown in the readout.) 
(The value given here is correct as shown in the readout.) 


Table 1. 



Fig. 1. Control panel layout. 


have been weeded out. Next, I 
plan to take advantage of some 
gigantic unmarked capacitor 
bonanzas. 

Operating the Digital 
Capacitance Meter 

The control panel layout Is 
shown in Fig. 1. The toggle 
switch in the lower left-hand 
corner of the control panel se- 
lects between the high- and 
low-order group of ranges. With 
the group-select switch in the 
EH position, the range-control 
switch selects the group of 
ranges E-1 through E3. The 
switch in the EL position 
causes the range selector to 
operate from E-6 through E-2. 

The ranges identified by the 
symbols E-6 through E3 are ab- 
breviated expressions in scien- 
tific notation. The converted ex- 
pressions are listed in Table 1. 
The decimal point is adjusted 
as directed by the expression, 
unless otherwise directed in 
parentheses. 

The range EO is correct as 
shown in the readout because 
it is given as the direct value of 


the capacitor in microfarads. 
This range covers the value of 1 
uF through 99 uF. In the range 
E-1, the value is correct as 
shown in the readout because 
the internal logic places the 
decimal point for us, so that the 
readout reads “X.X”. This 
range, then, covers the values 
0.1 through 9.9 microfarads. 

In the E-2 range, the decimal 
is also placed, so that the read- 
out shows “.XX” uF. This is the 
range .01 uF through .99 uF. All 
of the other ranges require you 
to place the decimal according 
to the value of the exponent. 
The resulting value will always 
be in microfarads. For instance, 
1 pF is equal to .000001 uF. 

The power switch is optional 
and may be omitted if the unit is 
not going to be left plugged in 
when not in use. Upon applica- 
tion of power, the unit has a 
built-in power on reset. The unit 
should power on with the ready 
lamp illuminated and 00 in the 
readout. 

The illuminated ready lamp 
indicates that the unit is ready 
to test a capacitor. Select the 



Fig. 2. Circuit operation. 


174 Microcomputing, October 1980 



Fig. 3. Range control. 


♦5V 



7400 



best range for the capacitor to 
be tested and connect the 
black clip to the negative lead 
(if it is an electrolytic) and the 
red clip to the positive lead. 
Press the test push button and 
the ready lamp goes out. As- 
suming that the capacitor is 
good and that the correct range 
was selected, a number ap- 
pears in the readout. This, 
along with the exponential 
shift, is the value in uF. 

If you select the correct 
range, but the value in the read- 
out is much higher than that 
shown on the cap, it’s leaky. 
Also, a leaky cap may cause the 
display to go into an overrange 
condition, causing the readout 
to flash on and off. If the cap is 
shorted, the readout will flash 
on and off and the counter will 
continue to count. 

Theory of Operation 

An overall view of the circuit 
operation is shown in Fig. 2. 


The unit has two groups of 
ranges, each with its own clock. 
Each group, in turn, has five 
ranges. 

In Fig. 3, the capacitor to be 
tested is connected with the 
positive end on the red clip and 
the negative end on the black 
clip. If the value of the capaci- 
tor is, say, .01 uF, the group- 
select switch should be set on 
EL (Exponential Low range), 
and the range-select switch 
should be set to E-2. This set- 
ting on the group-select switch 
will cause the far left decimal to 
light, and the readout will show 
.00 when the unit is powered up. 

In this situation, the group- 
select switch (top section) pulls 
E-2* to ground, and the range- 
select switch (top section) pulls 
E-2 to ground. The combination 
of E-2 and E-2* in Fig. 4 causes 
dp2 to go low. The signal dp2 
goes to Fig. 5, where the deci- 
mal point is lit. 

The group-select switch also 


pulls DB10 to ground in the EL 
position. DB10 goes to Fig. 6, 
where it presets the 7474 latch. 
With the latch preset, the Q out- 
put goes low and enables the 
7402 NAND gate (C4) to pass 
the composite signal generat- 
ed by combining TR and TX. As 
long as DB10 remains low, the 
number of pulses gated through 
the NAND gate will equal the 
number of pulses gated out of 
CNT. DB10 will remain low as 
long as the group-select switch 
is in the EL position. 

In Fig. 3, the range-select 
switch completes a circuit from 
R6, through the group-select 
switch to the positive end of the 
capacitor, to RC, which goes to 
Fig. 7, where it becomes the 
timing network to pin 6 and 7 of 
the 555 timer. The A1 timer (555) 
is an astable timer, i.e., it fires 
only once each time it is trig- 
gered. 

The power-on-reset circuit 


consists of a 220 uF capacitor 
from the clear input to the 7474s 
in Fig. 7 to ground. If the power- 
on-reset feature is not desired, 
the 220 uF cap may be elimi- 
nated, but the Ik Ohm resistor 
to + 5 volts will still be required 
as a pull-up. The duration of the 
reset pulse to the clear input on 
power up is determined by the 
RC time constant of the pull-up 
resistor and the reset capacitor 
combination. For 220 uF times 
Ik Ohms, this is .22 seconds. 

When the unit powers up, the 
clear input to the 7474s goes 
high .22 seconds later than the 
preset input to ensure the pow- 
er-up state of the unit. The first 
latch illuminates the ready 
lamp on the front panel, while 
the second latch resets GO and 
SEQ. 

In Fig. 7, SEQ goes high and 
primes the trigger network to 
the 555 timer. In the low state, 
GO holds the other 555 timer re- 


Microcomputing, October 1980 175 


set on pin 4 of Cl. In Fig. 4, the 
555 timer (E5) is also held reset 
with GO being low on pin 4. In 
Fig. 6, SEQ being high ensures 
that the divider (or prescaler) is 
being held at a binary 0000. In 
Fig. 5, SEQ holds the display 
counter at decimal 00, as well 
as holding the 7474 overrun de- 


tector in a reset condition. 

The unit is now ready to pro- 
vide an accurate test, and the 
two reference clocks are halt- 
ed. The low-range reference 
clock is in Fig. 4 (E5), with the 
clear held low by GO. The clocks 
both have inverter-drivers at the 
outputs to flip the signal from 



220 a 

(7) 


» dp2 




41 


Bin 

A 

r 9 

B 

a in 

C 

"0 


B4 

D 

7490 



Fig. 5. Counter and output display. 


pin 3 of the 555s, so that the 
signal is normally low with posi- 
tive-going spikes. Also, the use 
of transistor driver stages en- 
sures constant loading on the 
output of the timers and pre- 
vents frequency shifts from oc- 
curring due to loading or noise 
coupling at the output. 

The high-range reference 
clock is in Fig. 7 and has the 
same identical configuration. 
The only differences in the two 
clocks are the values placed on 
the timing components, which 
generate a low-group selected 
reference frequency of 28 kHz 
and a high-group selected ref- 
erence frequency of 1.5 kHz. 

To control the exact number 
of clock pulses occurring dur- 
ing the timing window, the two 
clocks are held in a reset state 
until you press the test button. 
If the reference clock were free 
running, theclock pulses would 
not be uniformly framed in the 
timing window generated by 


TX, affecting the unit’s accu- 
racy. The unit would be un- 
stable, and the reading would 
tend to vary from test to test 
with the same capacitor. 

With the capacitor under test 
in place and the ready lamp lit, 
press the test push button. The 
two 7474s in Fig. 7 preset, and 
the ready lamp extinguishes. 
GO goes high and SEQ goes 
low, firing the 555 (A1) timer, 
which generates a single posi- 
tive-going pulse whose dura- 
tion is under the control of the 
capacitor under test and the re- 
sistor selected by the group- 
select switch and the range- 
select switch combination. SEQ 
also goes to Fig. 6, where the 
clear releases from the 7490 
decade counter, and to Fig. 5, 
where the 7474 overrun detec- 
tor has a high applied to the 
clear and D inputs to enable the 
detector. Also, SEQ going low 
enables the display counter to 
display the number of pulses 


Ir 




C5 

7474 




C5 

7474 


o GO 


; 220/iF 



♦5V 



Fig. 6. Prescaler. 


Fig. 7. Timing and control. 


176 Microcomputing, October 1980 



that were gated into CNT. 

At the instant that SEQ goes 
low, GO goes high to remove 
the clear from both the highl- 
and low-range reference clocks. 
Both the T1 and T2 clocks go to 
Fig. 4, where the correct clock 
is selected by E-1* or E-2*. 
Since the low range is being 
selected in Fig. 3, E-1* is high 
and E-2* is low. With E-1 * high, 
the TR2 (low-range clock) is en- 
abled, and TR1 is inhibited by 
E-1* being low. TR operates at 
28 kHz and is gated through 
Fig. 6 under the control of TX. 

If the capacitor is .01 uF, the 
gating of TR and TX will output 
one pulse. If a .05 uF capacitor 
is being tested, the pulse on TX 
will be five times as long, and 
five clock pulses will be gated 
through. Since the prescaler is 
turned off by DB10, CNT is iden- 
tical to the signal on pin 11 of 
C4 in Fig. 6. 

These pulses are tallied by 
the display counter in Fig. 5 and 
directly decoded and displayed 
on the control panel display. 
The number showing on the dis- 
play is the value of the capaci- 
tor in microfarads. The deci- 
mal, when not lit, is placed by 
using the exponent indicator 
selected by the range-select 
switch. 

In the event that the maxi- 
mum displayed value of 99 is 
exceeded, the D output of B4 
goes low when the 7490 counts 
up past 9 to 0. This places a 
positive-going slope on the T in- 
put to the 7474 overrange de- 


tector. 

The output of the 7474 
switches high and enables CLK 
to be gated through to alter- 
nately switch FLASH high and 
low. FLASH goes to pin 4 of the 
7447 binary-to-decimal decod- 
ers and alternately enables and 
disables the outputs a through 
g. These outputs are normally 
high and are prevented from go- 
ing low while pin 4 is low, so the 
display flashes on and off. Any 
time the display flashes, the 
value being displayed is a ran- 
dom number and not the value 
of the capacitor under test. 

The source of the signal CLK 
is in Fig. 8, where a 74123 dual 
timer free-runs at all times while 
power is present, driving CLK 
on and off for equal 1/2 second 
intervals. The speed of CLK 
controls the rate of the flash 
when an overrange condition is 
detected. 

The power supply in Fig. 8 is 
simple and direct. The LM 309K 
is bolted directly to the cabinet 
from the outside with the leads 
protruding into the cabinet 
through two holes. The regula- 
tor doesn’t even get warm. The 
transformer is a standard 12 
volt filament transformer capa- 
ble of delivering 500 to 1200 mil- 
liamps. A generous amount of 
bypass capacitors used on the 
TTL circuits provide complete 
stability. Every chip is individu- 
ally bypassed with a .01 uF disk 
capacitor, and several low-pass 
8 uF capacitors were strategi- 
cally placed on the board. 


More Printing Terminals 
From MICROMAIL . . . 




DIABLO 1650 

• Prints at 40 cps, using 88, 92, or 
96 char, metalized printwheels. 

• Vertical resolution 1/48”; Horizontal 
1/120”. Capable of proportional 
spacing, bidirectional printing, and 
graphics under software control. 

• Bidirectional normal and direct tabs. 
Left, right, top and bottom margins. 

R.O. $2890.00 
KSR $3285.00 


DIABLO 1 640 

• Uses plastic printwheel and prints at 
45 cps. Otherwise, shares identical 
features with 1650 including: 

— Friction or tractor feed, up to 
1 5” wide. 

— Cartridge ribbon, fabric or carbon. 

R.O. $2745.00 
KSR $3140.00 


• Includes upper/lower case option. 

• Bidirectional printing at 1 50 cps. 

• Tractor-feed forms, 3” to 15” 
wide. 

0 $1599.00 

Options: 



DEC 


LA 34 


(Shown with optional forms tractor and numeric 
keypad). 

• Prints 10, 12, 13.2, or 16.5 
characters per inch, upper/lower 
case 

• 2, 3, 4, 6, 8, or 12 lines per inch. 

• Friction feed, paper width to 1 5 

inCheS $969.00 

Options: 

— Numeric keypad — $80.00 
— Adjustable forms tractor — 

$130.00 



ANADEX DP-9500/9501 


• High Density Graphics 

• Parallel, RS-232C, and Current 
Loop interfaces standard. 

• Double width printing 

• 132/175 or 132/220 columns. 

• 50 to 200+ lines/min., 150/200 
CPS 9 x 7/7 x 9 font or 1 20/200 
CPS with 11 x 9/7 x 9 font. 

• 9-wire print head, 650 million 
character life. 

• Bi-Directional printing with shortest 
distance sensing logic. 

• Adjustable width tractor paper feed. 


:220mF 


:220>*F 


2 



10 



B 1 



81 


74123 



74123 

1 

r 

A Q 

A 

9 

A 0 



Fig. 8. Flash clock and power supply. 


Forms length control — $100.00 • Complete forms control. 

— Vertical Format Control with 

Compressed Print - $1 25.00 Call for LOW Price 

We Also Represent the Following Manufacturers: 

TELETYPE GTC TeleVideo TEC SOROC 

Write or Call In for Our Free Catalogue! 


eCUCRORIfUlrj 






MICROMAIL • BOX 3297 ♦ SANTA ANA, CA 92703 
(714) 731-4338 


TO ORDER: Send check or money order to. MICROMAIL, P.O. Box 3297, Santa Ana, CA 
92703. Personal or company checks require two weeks to clear. Terminals in stock are 
shipped the business day after receipt of certified funds. All equipment includes factory 
warranty. 

SHIPPING: We ship freight collect by UPS when possible. Larger terminals are shipped 
by motor freight. Air and express delivery is available on all products. 


HANDLING: All orders are subject to MICROMAIL’s handling charges. Less than 
$750.00, add 3%. $750.00 to $2,000.00, add 2%. Over $2,000.00 add 1%. 


iS Reader Service index— page 241 








Fig. 10. PC board layout. 


Fig. 9. Full range linearity map. 


To test a capacitor of 6.4 uF, 
the group-select switch is 
placed in the EH position, and 
the range-select switch is set to 
the E-1 position. This places a 
low on the E-1* line, and DB10 
goes high along with E-2*. E-1 
and E-1 * at the top of Fig. 4 pull 
dpi low to Fig. 5 to light the 
decimal point dpi. The readout 
now shows 0.0 after the reset 
button has been pushed. 

When the test button is 
pushed, the sequence of events 
is similar to the low-range test. 
There are a couple of differ- 
ences. First, with E-1 * low, TR2 
is inhibited and E-2* high en- 
ables TR1, so that TR operates 
at 1.5 kHz. DB10 being high to 
Fig. 6, the 7474 is held in a 
cleared condition with Q set 
low and Q set high. The output 
from C4 pin 11 in Fig. 6 is gated 
to the 7490 divide-by-10 pre- 
scaler. TR and TX gate 640 
pulses through to pin 11 of C4. 
The 7490 decade counter di- 
vides the 640 pulses down to 64 
pulses on CNT. 

|n Fig. 5, the display counter 
counts up to 64 and stops. With 
the decimal point dpi lit, the re- 
sultant display is 6.4, which is 
the value of the capacitor in mi- 
crofarads. 


Since the full range linearity 
of the 555 timer isn’t perfect, 
linearity problems arise at the 
upper and lower extremes and 
the unit becomes pearly impos- 
sible to stabilize. For this rea- 
son, two clocks were used. A 
very fast clock (28 kHz) with no 
prescaler is close to linear all 


the way down to the tens of pF. 
Upon nearing the tens of pF, 
the unit becomes increasingly 
inaccurate, but still serves as a 
good go, no-go tester. An accu- 
racy tracking chart is shown in 
Fig. 9 for all ten ranges in the 
capacitance spectrum. 

Due to the long time delays 
generated by electrolytic ca- 
pacitors, a prescaler is used in 
conjunction with a relatively 
slow clock. The 1.5 kHz clock 
aided in stabilizing the erratic 
upper end of the capacitance 
spectrum. The accuracy of the 
unit tracks better than the ca- 
pacitor under test. The capaci- 
tor to be tested usually has a 
tolerance of 10 to 20 percent. 
For a 19,000 uF cap, that’s a 
range of 15,000 through 23,000 



Fig. 11. PC board layout. 


uF. 

Five 19,000 uF caps were 
sample-tested on the E3 range, 
and they all tested at 20,000 to 
21,000 uF. At values in excess 
of 50,000 uF, the tolerance of 
the unit begins to increase, un- 
til, at 100,000 uF, the unit’s ac- 
curacy is 15 percent. A sam- 
pling of 100,000 uF capacitors 
measured 85,000 uF, which is 
15 percent below their rated val- 
ue. The capacitors themselves 
were rated at 20 percent toler- 
ance, indicating that the unit is 
well within reasonable limits 
for a capacitor of this value. 

Tracking over a majority of 
the midrange of the unit is vari- 
able, from 1 percent to 5 per- 
cent accurate. This was deter- 
mined by using ten capacitors 
of several values and tracking 
the average reading. The toler- 
ance of the capacitors was 20 
percent, but the average of a 
group of ten tracked close to 1 
percent. This forms the founda- 
tion for my tracking chart and is 
the method used to determine 
these percentages. 

Construction 

The PC board layout is shown 
in Figs. 10 and 11. The cabinet 
was purchased at Radio Shack, 
along with the common anode 
seven-segment displays. The 
wiring was all point-to-point 
wire wrap, using 30 gauge. No 
unusual parts were used in the 
digital capacitance meter. In 
fact, I selected them specifical- 
ly for their availability and low 
cost. 

The component values are 
not critical, and transistor types 
are unimportant. Simply ensure 
that they are NPN switching 


178 Microcomputing, October 1980 


transistors with sufficient gain 
to allow reasonable rise and 
fall time. Try to get as close as 
possible to the clock frequen- 
cies and observe timing-related 
component values closely. Your 
particular wiring scheme may 
cause the calibration to be hard 
to achieve. If the limit of a 
calibrated range is reached, add 
or subtract resistance as re- 
quired to center the calibration 
and reestablish stability. This is 
most likely to vary at the upper 
and lower extremes of the unit’s 
range (especially toward the E-6 
and E3 ranges). 

When trimming up each 
range, favor the end of the 
range closest to the EO range 
for accuracy. Don’t allow any 
single capacitor to set the stan- 
dard for a range. About ten ca- 
pacitors give a good indication 
of how well the range is track- 
ing. 

The far left decimal point 
should light when the E-2 range 
is selected (make sure the 
group-select switch is on EL), 
and the center decimal should 
be lit when the selector switch 


is on E-1 (make sure the group- 
selector switch is on EH). All 
other ranges should not have 
any decimal point illuminated. 
These decimals are set using 
scientific notation, as derived 
from the range identifier. 

Testing Capacitors 
of Unknown Value 

The truest value of any un- 
known capacitor is in the range 
closest to EO, where a reading 
is obtained. If the readout 
shows a value of 00 after the 
test button has been pushed, 
the range is too high. Switch to 
a lower range and try again. If 
the display flashes on and off 
with a value indicated, the 
range is too low. Switch to a 
higher range and try again. If 
the display flashes on and off 
and the display is counting con- 
tinuously, either you are much 
too low on the range selected 
or the capacitor is shorted. 

Experience will be your best 
teacher in using the digital ca- 
pacitance meter. I have come to 
trust and rely on mine, which 
has never failed me yet.H 


JOE COMPUTER * Presents Exclusive Software: 

IT’S FOOTBALL SEASON! 

Pro and College Football from SDL: 

A TRS 80f translation of Ken Perry’s popular Apple programs. These programs predict point 
spreads with unbelievable accuracy. They are heuristic and require about 10 minutes a week to 
record the weekend’s results into the data base from your local newspaper. You may predict any 
game within seconds from the data saved on cassette or disk. Pro Football contains all 28 pro 
teams. College football contains an unbelievable data base of 78 teams! Each program comes with 
the entire 1979 season data file on cassette or disk. You can display each team’s record of scores 
or won-loss record. A record of 4-5 weeks is required before predictions are effective so you’re 
just in time! Pro or College Football will be shipped U.P.S. blue label the same day order is receiv- 
ed. Order C.O.D. by phone. $1.00 blue label charge; C.O.D. fees added on. 


Pro Football Cassette (32K TRS BO Level II) $21.95 

Disk $26.95 

Coliege Football Cassette (48K TRS 80 Level II) $21.95 

Disk $26.95 


Horse Race Handicapping! 

Probability Handicapping Device 1 was written by a professional software consultant to TRW 
Space Systems. This is a complex program carefully human factored for easy use. It is a com- 
prehensive horse racing system for spotting overlays in thoroughbred sprint races. Your computer 
will accurately predict the win probability and odds line for each horse based on your entries from 
the racing form. The next day overlaid horses can be spotted on the track tote board. The users 
manual contains a complete explanation of overlay betting plus much more useful information. The 
appendix contains a detailed tab run of a 100 consecutive race system workout showing an amaz- 
ing 50% return ($.50 returned for each $1 .00 flat wager). Includes many features such as error 
correction, bubble sort, line printer output, archiving, etc. The manual may be ordered separately 
for perusal for $7.95 and credit. PHD-1 users manual and cassette for; 8K Apple II Applesoft, 8K 


Challenger (specify IP or 4P), TRS-80 16K Level II $29.95 

Apple or TRS-80 Disk $34.95 


Brand new from SDL: Win At The Races another Ken Perry spectacular! This algorithm is based 
on a currently popular book representing the most ambitious multiple regression research on 
thoroughbred racing to date. The probable odds and win probability for each horse are displayed. 
Line printer output, error correction, descending sort; all the niceties! 


Win At The Races cassette (32K TRS-80 Level II) $34.95 

Disk (48K TRS-80 Level II) $39.95 


THE BOOK for the Computerized Handicapped 

WINNING AT THE RACES by William Quirin Ph.D. Computer science has come to the rescue of the 
racing fan. This is the first major scientific study of handicapping available to the general public, 
detailing what the computer reveals about class, form, early speed, and more; plus special multi- 
ple regression computer systems. A Tom Ainsle — winners circle book. 

Winning At The Races $21.95 

+ $.75 PAH 

Order now to get on our list and receive back Issues free! 

Phone Orders: Mike (213) 992-0514 Systems Design Lab (213) 374-4471 

Make Checks payable to: JOE COMPUTER ^ 247 
22713 Ventura Blvd., Suite F, Woodland Hills, CA 91364 

*Get on the Computers & Gambling Products mailing list for $3.00 & receive available back issues 
Calif, res. add 6% tax. |TRS-80 is a Registered T rademark of Tandy Corporation 


Why Your Next CRT Should 
Come From MICROMAIL: 



Insert/delete line, insert/delete 
character, line/page erase. 

Reverse video, blinking, 
underline, V 2 intensity, pro- 
tected field, blank security field. 

Uses 7x10 dot matrix for a 
high quality u/l case display 
with descenders. 

Standard typewriter or teletype 
keyboard; numeric keypad. 

Model 920 includes 17 
dedicated keys for function and 
editing. 

Block or character transmis- 
sion, auxiliary printer port. 

Cursor up, down, left, right, 
return, home, load, read, tab 
and back tab. 

Call for Low Price 


Reverse video, blinking, underline, 

1 / 2 intensity, protected fields, 
blank security field. 

Transmit character, line, partial 
page, page, or unprotected data. 
Cursor up, down, left, right, return, 
home, plus load and read. 


$699.00 


We Also Represent the Following Manufacturers: 

DIABLO DEC TEXAS INSTRUMENTS 
ANADEX GTC TELETYPE 

Write or Call In for Our Free Catalogue! 



:RUCRDIHfULd 


MICROMAIL • BOX 3297 ♦ SANTA ANA. CA 92703 
(714) 731-4338 



TO ORDER: Send check or money order to: MICROMAIL, P.O. Box 3297, Santa Ana, CA 
92703. Personal or company checks require two weeks to clear. Terminals in stock are 
shipped the business day after receipt of certified funds. All equipment includes factory 
warranty. 

SHIPPING: We ship freight collect by UPS when possible. Larger terminals are shipped 
by motor freight. Air and express delivery is available on all products. 

HANDLING: All orders are subject to MICROMAIL's handling charges Less than 
$750.00. add 3%. $750.00 to $2,000.00, add 2%. Over $2,000.00 add 1%. 


Reader Service index — page 241 









Betting on Old POKEy 


Although you can’t always be a winner at the race track, 
you can cash in on the animated graphics capability of your PET. 


Gary Greenberg 
35-63 80th St 
Jackson Ht$., NY 11372 

O ne of the nice features of the PET is the POKE com- 
mand, which places a specific character at a specific 
location on the PET’S screen. This permits you to produce 
some interesting animated graphics, as illustrated in the 
Horse Race program in this article. 

Program Operation 

POKE puts a given value into a specific location in 
memory. Lines 1000-1090 show you the format of the POKE 
instruction. The number after the comma is the value placed 
into memory. The number before the comma is the address 
of the memory location in which the number is placed. As 
you can see from the example, either value can be a variable. 

The PET screen accommodates 1000 characters in 25 
lines of 40 characters each. The data in certain memory ad- 
dresses dictate what appears on the screen at any particular 
location. The 1000 addresses starting consecutively with 
32769 determine the screen display. The numeric value 
stored in address 32769 determines what appears in the first 
position on the screen (row 1, column 1). The value stored at 
32873 determines what appears in the 105th position on the 
screen (row 3, column 25). 

Every PET character has an assigned number that, when 
stored in one of the 1000 addresses, will display the 
character at the address indicated. For example, the asterisk 
is assigned number 42. When 42 is poked into address 32873 
(POKE 32873,42), then the screen will display an asterisk at 
row 3, column 25. The asterisk will remain there until you 
either poke another value into 32873 or write over that loca- 
tion by running your program. 

In the Horse Race program, the POKES are used to draw 
the horses and advance them across the screen. The number 
32, when poked into memory, produces a blank at the in- 
dicated screen location. The POKEs are arranged so that 
every time a horse is advanced one space, blanks are placed 
in all the necessary locations to erase all remnants of the old 
horse drawing. 

In line 250 I defined the starting positions for each of the 
five horses by using the value A(l). As A(l) changes value, the 
horses are advanced across the screen. Lines 600-610 deter- 
mine which horse will be moved. Subroutine 1000 causes the 
horse to be drawn in the proper place on the screen. 

This version of Horse Race permits only one player to bet. 


Each horse has an equal chance of winning. The computer 
will keep track of the player’s winnings. Lines 150-170 are 
used to provide for a random starting point for the random 
number generator. The PET uses the same sequence of ran- 
dom numbers every time you turn it on. Since writing this pro- 
gram, I have learned that those lines can be replaced by 150 
R = RND(-TI). ■ 


10 PRINT".!" GGSUB1200 
20 PRINTTAB(8> ; "COPVRIGHT 1978 BY" 

30 PRINTTAB<9); "GARY GREENBERG" 

40 GOSUB1200 
50 R 1=500 

80 PR I NT "WELCOME TO SILICON VALLEY RACE TRACK. " GOSUB 1200 
90 PR I NT "YOU HAVE *508 TO START WITH." 

100 PRINT"ALL HORSES ARE 41 0BDST0 WIN. "PRINT 
110 PRINT " THE HORSES ARE NUMBERED 1-5." 

120 PR I NT "ENTER THE NUMBER OF YOUR HORSE AND" 

130 PR I NT "THEN ENTER YOUR BET." 

140 GOSUB1200 

150 FOR I = 1 TOVAL <RIGHT$<TI$,2)> R=RNB <1 ) : NEXT I 
160 T1=INT<1000*RNDC1>> 

170 F0RI=1T0T1 R=RND<1 ) ; NEXTI 

240 F0RI*1T0VAL<RIGHT$<TI$,2>> R=RND(1 > NEXTI 

250 R< 1 >=2 : AC2) = 122 •' A<3>=242 A<J4>=362 • A(5>=482 

260 F0RI=1T05 B<I)=0 NEXTI 

270 INPUT "HORSE" ;H 

280 H=INT<H) : I FH>0ANDH<6THEN3 1 0 

290 PR I NT "HORSES ARE NUMBERED 1-5. TRY AGAIN" 

300 GOSUB1200 GOTO270 
310 INPUT " BET ",BB=ABS<B> 

320 I FB<R 1 ORB=R 1 THEN400 

330 PRINT" YOU HAVE *";R1; M . ", 

350 GOTO310 
400 PRINT".!"; 

410 FORI=1TO10 PRINT IFI22=INT<I22>THENPRINTI22, GOSUB1200 

420 NEXTI 

430 FGRI=1T05 

440 GOSUB 1 000 

450 NEXTI 

600 R=INT<5*RND<1>+1) 

610 <A(R>=A<R>fl 

620 I=R GOSUB1000 

630 B<R>=B<R>+1 

640 IFB<RK34THEN600 

650 PR I NT "8" F0RI=1T015 : PRINT NEXTI 

660 PR I NT" THE WINNER IS NUMBER", R 

670 IFH=RTHENR1=R1+4*B ; GOTO750 

680 PR I NT "YOU LOSE. " :R1=R1-B 

685 PR I NT "YOU HAVE *";R1, "LEFT. " 

687 I FR 1 =0THENPR I NT " YOU ' RE BROKE. COME BACK ANOTHER DAY. " G0T09999 
690 INPUT "ANOTHER RACE <Y OR N>",Z* 

700 IF LEFT$<Z$,1X>"V"THEN9999 
710 GOTO250 

750 PRINT" YOU WIN $";4*B 
760 PR I NT" YOU NOW HAVE 
770 GOTO690 
990 GOT09999 
1000 P0KE32768+A(I)-1,32 
1010 P0KE32768+A< I ) , 39 
1 020 P0KE32768+A < I >+l, 176+1 
1030 P0KE32768+A< I )+2, 160 
1040 P0KE32768+A< I )+3, 95 
1050 P0KE32768+A< I >+39,32 
1060 P0KE32768+A< I >+40, 73 
1 070 P0KE3276S+ A < I > +4 1 , 32 
1080 P0KE3276S+A< I ) +42, 32 
1090 P0KE3276S+A<I>+43,77 
1100 RETURN 

1200 F0RJ=1T036 PRINT"-"; NEXT J : PRINT : RETURN 
9999 END 
READY. 


Program listing. Horse Race program in PET BASIC run on a PET printer. 
The symbols between the quotes in lines 10 and 650 are the clear and 
home symbols, respectively. 


180 Microcomputing, October 1980 


MICRO MISCELLANY FROM JBE 


A to D D to A CONVERTER 


6502 MICRO-MICROCOMPUTER 



79-287 ASSM. 

KIT 

BARE BOARD 


$ 79.95 

$ 59.95 

$ 29.95 


The JBE A-D and D-A Converter can be 
used with any system having parallel 
ports, and interfaces with JBE Parallel 
I/O Card (see below). A-D conversion 
time is 20pS, D-A conversion time is 
5pS. Uses include speech, music syn- 
thesizing, slow scan TV, and joystick or 
paddle control inputs. Uses single 
power supply (5V), see JBE 5V power 
supply below. Parallel inputs and 
outputs include 8 data bits, strobe lines 
and latches. Analog inputs and outputs 
are medium impedance zero to five volt 
range. 



APPLE II PARALLEL INTERFACE 


80-153 ASSM. 

KIT 

BARE BOARD 


This JBE 3Vax5" Micro-Microcomputer has the following: 

• 1024 Bytes of RAM (two 2114s) 

• 2048 Bytes of EPROM (2716) 

• Uses one 6522 via (documentation inc.) 

• 2 8-bit bidirectional I/O ports 

• 2 16-bit programmable timer/counters 

• Serial Data Port 

• Latched output and input with handshaking logic. 

• TTL and CMOS compatible 
The 6502 Microprocessor is particularly suited for control 
functions such as temperature control, burglar alarm, 
electric wheelchair, lights, etc. This Micro-Micro inter- 
faces with the JBE Solid State Switch and A-D and D-A 

Converter and uses the JBE 5V power supply (see 
$1 10.95 below). 2716 EPROM is available separately (not 
$ 89.95 included in kit or assm. board). A 50 pin connector 
$ 24.95 is deluded. 



JBE Apple II Parallel I/O Card interfaces 
printers, synthesizers, keyboards, and JBE 
A-D and D-A converter and solid state 
switches. This interface has handshaking 
logic, two 6522 VIAs and a 74LS74 for timing. 
Inputs and outputs are TTL compatible. 

79-295 ASSM. $ 69.95 

KIT $ 59.95 

BARE BOARD $ 22.95 


SOLID STATE SWITCH 




Control the world! Your computer can control power to your printer, lights, stereo and 
120V AC appliances up to 720 watts (6 amps at 120VAQ. Input 3 to 15VDC, 2 -13 MA 
TTL compatible, isolation - 1500V, non zero crossing, the switch comes in a 1 or 4 
channel version and includes documentation for interfacing with JBE Dimmer Control 
(see below). The 1 channel version is also available professionally packaged. 


79-282 1 CHANNEL ASSM. $13.95 
1 CHANNEL PKGD. $39.95 
79-282 4 CHANNEL ASSM. $49.95 


KIT $10.95 BARE BOARD $ 6.95 
KIT $39.95 BARE BOARD $24.95 


POWER SUPPLIES 



± 1 2 VOLT POWER SUPPLY 


This 2X2V2” power supply uses a wall transformer for 
safety and is protected against short circuit and ther- 
mal breakdown. It is rated at ± 12 V 120MA and can 
be used as a single 24 V power supply at 120 MA. It is 
ideally suited to operational amplifier experiments. 

80-161 ASSM. $22.95 
KIT $18.95 

BARE BOARD $ 8.95 


5 VOLT POWER SUPPLY 


This 2V4X2V2” 5V 500MA power supply is protected 
against short circuit and thermal breakdown and 
uses a wall transformer for safety. It operates JBE 
A-D and D-A converter, 8085 computer, 8088 com- 
puter & 6502 micro-microcomputer. Documentation 
is included. 

80-160 ASSM. $20.95 
KIT $16.95 
BARE BOARD $ 8.95 



DIMMER CONTROL 



The JBE Dimmer Control has 4 chan- 
nels, 256 brightness levels, on-board 
power supply and four 8-bit parallel In- 
put ports (not latched). This board inter- 
faces with the JBE Solid State Switch 
and Apple II Parallel Interface Card 
(documentation included). 

80-146 ASSM. $89.95 

KIT $79.95 

BARE BOARD $25.95 


APPLE II DISPLAY BOARD 



80-144 ASSM. $49.95 
KIT $42.95 
BARE BOARD $25.95 


This handy little (3x7”) board 
is ideal for teaching and 
troubleshooting. It has a run 
— stop, single step switch 
which makes identification 
of shorted lines between 
address or data-bits easy 
and shows single steps for 
teaching computer logic. 
The display board has 16 
Address LEDS, 8 Data LEDS 
& 1 RDY LED. All lines are 
buffered. 


BARE BOARDS 


APPLE II EXTENDER BOARD 


This is what you’ve been waiting for! The 3ftx2%” Apple II Extender 
Board makes troubleshooting much faster and easier! Great for use' with 
the JBE Apple II Display Board. 50 pin Apple connector is ihcluded. 

80-143 $ 12.95 


CRT CONTROLLER 


This intelligent CRT Controller is completely contained on a 6x6%” printed circuit 
board. The design is based on an 8085A Microprocessor and an 8275 Integrated 
CRT Controller. It featuresrthe following: 


25 Lines, 80 characters/line 
5x7 DorMatrix 
8085 CPU 
Two 8185s 

Two 2716s (1 for software, 1 for user 
programmable character generator) 
Serial Interface RS232 and TTL 
Baud rates of 110, 150, 300, 600, 1200, 
2400, 4800 & 9600. 


Keyboard Scanning System 
Uses +5V power supply and ± 12V 
power supply (both available from 
JBE — see above) 


$ 39.95 


8085 3-CHIP SYSTEM 


State-of-the-art system using* 3 IC’s, an 8085, an 8156 and either an 8355 or 
8755. The system has the following: 

• 3 MHz 8085 CPU • ? serial input/output lines 

• 256 bytes static RAM • Instruction set 100% 

• 2048 bytes ROM upward compatible with 8080A 

• 38 parallel input/output lines 14-bit counter/timer 


$ 24.95 


8088 5 .CHIP SYSTEM 


An 8086 Family microcomputer system using 5 IC’s, an 8088 CPU, and 8284 
clock generator, an 8155 RAM/IO/Timer, an 8755A EPROM/IO and an 8185 (IK 
x 8) Static RAM. This system has the following: 

• 16-bit internal architecture 

• Up to 1280 bytes of static RAM 

• 2048 bytes of EPROM 

• 38 parallel input/output lines 

• 14-bit counter/timer ^ O 

• Instruction set 100% compatible with the 8086 $Z9iV9 


SPARE PARTS 


INTEGRATED CIRCUITS 
6502 $ 9.95 

6522 $ 9.95 

2716 5 Volt $ 29.95 


CABLE 

Standard Dip Jumpers 

16 Pin, 1 Ft. Length $ 4.95 

CONNECTORS 

50 Apple Connector $ 5.95 


JOHN BELL ENGINEERING 


ALL PRODUCTS ARE AVAILABLE FROM: JOHN BELL ENGINEERING 
P.O. BOX 338 • REDWOOD CITY, CA 94064 • (415)367-1137 
ADD 6% SALES TAX IN CALIFORNIA. FOR ORDERS OUTSIDE THE U.S.A., ADD 5% FOR SHIPPING AND HANDLING> 


!/" Reader Service index— page 241 


Microcomputing, October 1980 181 






The 16-Bit Time Trials 


These assembly-language benchmarks test 
a new, improved generation of microprocessors. 


Allan Flippin 
EECO, Inc. 

1601 E. Chestnut Ave. 
Santa Ana, CA 92701 


S ince my March 1980 article “Assembly- 
Language Benchmarks,” several new 
microprocessors have become available. 
This update will examine four of them: the 
8086, 6809, 68000 and Z8000. 

I’ve also included three microprocessors 


from the first piece: the 370-145 for com- 
parison purposes and the LSI-11/23 and 
9900 because both have improved execu- 
tion speed. I did not recode any of the 
benchmarks for these microprocessors, but 
simply plugged in the new execution times 
from the manufacturers’ information. Ac- 
tual listings for the 8086 and 6809 bench- 
mark programs are included with the arti- 
cle. (Contact the author directly for copies 
of other listings.) 

The benchmarks and scoring methods 


used are the same as for my original article 
with the following exceptions: 

1. Since my data sample is smaller and 
more uniform, I have used averages instead 
of medians for my index calculations. 

2. Execution times for the multiplication 
benchmark are prorated to 16 bits instead 
of eight bits. 

The Benchmarks 

The microprocessor execution times are 
based on the clock frequencies listed in 







; 

8086 

TABLE LOOKUP ROUTINE 







i 

i 

37 MICROSECONDS 







; 

8 INSTRUCTIONS 







» 

l 

17 BYTES 


0800 





i 

START: 

ORQ 

0800H » SET PROGRAM ORIGIN 


0800: 

AO 

00 

09 



MOV 

AL, CHAR i GET VALUE TO BE SEARCHED FOR 


0803: 

B9 

OA 

00 



MOV 

CX» LENGTH TABLE1 ; GET NUMBER OF TABLE ENTRIES 


0806: 

BF 

01 

09 



MOV 

DI, OFFSET TABLE1 ; GET TABLE BEGINNING ADDRESS 


0809: 

FC 





CLD 

; SET UP FOR AUTO- INCREMENT IN 'SCAS' 

INSTRUCTION 

080A: 

F2 

AE 




REPNZ 








& 

SC AS 

TABLE1 .SEARCH TABLE UNTIL EITHER WE FIND THE CORRECT 








i VALUE OR TABLE ENTRY COUNTER GOES TO 

0 

080C : 

75 

03 




JNZ 

ERROR i PROCESS ERROR IF NO MATCH 


080E : 

8A 

45 

09 



MOV 

AL. TABLE2-TABLE1-1 CDI 3 ; OTHERWISE. GET CORRESPONDING 

ENTRY 








. FROM DATA TABLE 







i 

-END OF ROUTINE 


0812 





i 

ERROR 

EQU 

% 


0812: 

EB 

FE 



END: 

JMP 

END i LOOP 








-DATA 

AREAS 


0900 






ORG 

0900H 


0900 





CHAR: 

DB 

? . CONTAINS VALUE TO BE SEARCHED FOR 


0901: 

00 

01 

02 

03 

TABLE1 : 

DB 

0. 1.2. 3, 4, 5. 6. 7.8.9 i SEARCH TABLE 



04 

05 

06 

07 






08 

09 







090B : 

00 

01 

02 

03 

1 

TABLE2: 

DB 

0, 1. 2. 3. 4, 5. 6. 7. 8. 9 ; CORRESPONDING SEARCH TABLE 



04 

05 

06 

07 






08 

09 














Listing 1. 8086 table lookup routine. 



182 Microcomputing, October 1980 


i 

i 8086 BLOCK MOVE SUBROUTINE AND CALLING SEQUENCE 

; 694 MICROSECONDS 

i 11 INSTRUCTIONS 

; 21 BYTES 


i CALLING SEQUENCE 


0800 



START 

ORG 

0800H 

0800 

BE 

00 09 


MOV 

SI, OFFSET FROM 

0803 

BF 

00 OA 


MOV 

DI, OFFSET TO 

0806 

E8 

02 00 

i 

CALL 

MOVE 





—END OF 

ROUTINE 

0809 

: EB 

FE 

END; 

JR 

END 





—BLOCK 

MOVE SUBROUTINE 

080B 

; 8B 

DE 

MOVE: 

MOV 

BX, SI 

080D: 

: FC 



CLD 


080E 

AC 


MOVE 1 : 

LODS 

FROM 

080F 

AA 



STOS 

TO 

0810 

3C 

OD 


CMP 

AL, ODH 

0812 

75 

FA 


JNZ 

MOVE1 

0814; 

2B 

F3 


SUB 

SI, BX 

0816; 

C3 



RET 






—DATA AREAS 

0900 




ORG 

0900H 

0900 



FROM 

DB 

256 DUP (?) 

OAOO 



TO 

DB 

256 DUP (?) 


SET PROGRAM ORIGIN 
LOAD ADDRESS OF SOURCE FIELD 
AND ADDRESS OF DESTINATION FIELD 
CALL MOVE SUBROUTINE 


; LOOP 


.SAVE STARTING ADDRESS OF SOURCE FIELD 
.SET UP FOR AUTO- INCREMENT 

; GET A BYTE FROM SOURCE FIELD 
i STORE IN DESTINATION FIELD 

; CHECK TO SEE IF CARRIAGE RETURN JUST MOVED 
i LOOP BACK IF NOT 

; CALCULATE NUMBER OF BYTES MOVED 
i EX IT SUBROUTINE 


; SOURCE FIELD 
; DESTINATION FIELD 


Listing 2. 8086 block move subroutine and calling sequence. 


Table 1. 

I have added charts to compare the mem- 
bers of a given manufacturer’s micropro- 
cessor family with each other. I assigned 
performance indices of “1 .000” to the eldest 
family member for all benchmarks and all 
categories. Indices for the other family 
members are then calculated relative to the 
eldest family member. These charts should 
indicate the better performance offered by 
the newer microprocessors. 

The 8086 is the overall winner, doing well 
in all categories. It excels in memory utiliza- 
tion. This is because its architecture ac- 
commodates one- and three-byte instruc- 
tions. In many cases, one of these can do 
the same task as a corresponding two- or 
four-byte instruction on another 16-bit mi- 
croprocessor. The result is compact code, 
requiring about 20 percent less memory 
space than either the 68000 or Z8000. 

The 8086 also is fast, although it is slower 
than the 68000, which runs at the same 
clock frequency. Special-purpose string 
processing instructions make the table 
lookup the 8086’s fastest benchmark. The 
16-bit multiply is its slowest benchmark. It 
requires 70 percent more time than the 
68000. 

In the ease of programming category, the 
8086 is on par with the other micropro- 
cessors, but these figures don’t mean much 
since the variations between the micro- 
processors are so small. I feel that the 
8086 is more difficult to program than the 


68000, LSI-11/23 or 9900. One reason is 
that its registers, though more versatile 
than the 8080’s, are not completely general- 
purpose. Many of the instructions pertain to 
specific registers and cannot be used with 
other registers. Also, special-purpose in- 
structions such as those used for string 
processing increase the number of rules 
that a programmer must remember in order 
to produce working code. 

The 68000, though number two in the 
overall ratings, is number one in execution 
speed. Even though the 68000 and 8086 
have the same clock frequency and similar 
memory timing, instructions tend to exe- 
cute quicker on the 68000. For example, an 
instruction to load a 16-bit value from mem- 
ory into a data register takes 1.5 microsec- 
onds on the 68000. A similar instruction will 
take 1.875 microseconds executed on the 
8086. 

In my opinion the 68000 is one of the 
easiest to program. Instead of using spe- 
cial-purpose instructions for string manipu- 
lation, the 68000 handles these tasks effi- 
ciently with Move and Compare instruc- 
tions, using the Post-Increment and Pre- 
Decrement addressing modes. 

The 68000’s memory utilization is only 
mediocre. This is the price for having a large 
number of registers and addressing modes. 
With memory prices dropping rapidly, per- 
haps memory utilization is no longer an im- 
portant criterion for microprocessor selec- 
tion. Curiously, the 6809 performs signifl- 



jcippkz 


Fall Specials! 

Disk Based System: Apple II or 
Apple II Plus with 48k RAM 
installed, Disk II complete 

with controller $1749 

Shipped free continental U.S. 

Buy a 16k Apple II or Apple II 
Plus for $1195; get 32k more 
memory, installed, free! 

Apple Silentype® Printer $595; 
includes 10 rolls paper, free! 

UPGRADE! Buy a Disk II with 
controller for $595; get 10 
Diskettes (your choice) free 

DISKETTES: Dysan,3M, Memorex, all 
at great ERICKSON prices! 

CALL TOLL FREE 
— wn (800) 621-5802 W 


ERICKSON 

COMMUNICATIONS' 
Chicago. IL 60630 

5456 North Milwaukee Ave. 
(312) 631 -51 81 (within Illinois) 


i/ 0 Reader Service index-page 241 


Microcomputing, October 1980 183 




\ 

8086 JUMP TABLE ROUTINE 




\ 

6 MICROSECONDS 





3 INSTRUCTIONS 




; 

10 BYT C4 > 


0800 


! 

START 

0R0 0800H 

■> SET PROGRAM ORIGIN 

0800: 

8B 36 00 09 


MOV SI, STATE 

i LOAD STATE UORD 

0804: 

D1 E6 


SHL SI, 1 

; MULTIPLY BY 2 

0806: 

FF A4 02 09 

i 

JMP JMPTBL, CSID 

, GET JUMP TABLE ENTRY AND JUMP UHERE IT POINTS 



i 

i 

-END OF ROUTINE 


080A : 

EB FE 

END: 

i 

JMP END 

; LOOP 



1 — 

-DATA AREAS 


0900 



ORG 0900H 


0900 


STATE 

DU ? 

; STATE UORD 

0902: 

0A08 0A08 

i 

JMPTBL 

DU END, END, END, END, END, END i JUMP TABLE 


0A08 0A08 





0A08 0A06 







Listing 3. 8086 jump table routine. 





; 

8086 MULTIPLY ROUTINE 





; 

19 MICROSECONDS 





} 

2 INSTRUCTIONS 





i 

} 

7 BYTES 


0800 



i 

START 

ORG 0800H 

i SET PROGRAM ORIGIN 

0800: 

A1 

00 09 


MOV AX, NUM1 

t GET MULTIPLICAND 

0803: 

F7 

26 02 09 


MUL AX, NUM2 

i MULTIPLY BY MULTIPLIER AND LEAVE RESULT IN 




i 


i REGISTERS AX AND DX 




i 

—END OF ROUTINE 


0807: 

EB 

FE 

$ 

END: 

JMP END 

i LOOP 




i 

! 

—DATA AREAS 


0900 



l 

ORG 0900H 


0900 



NUM1 

DU ? 

i MULTIPLICAND 

0902 



NUM2 

DU ? 

i MULTIPLIER 





Listing 4. 8086 multiply routine. 


CI-68A CONTROL INTERFACE 



• 8 opto-isolated inputs 

• 8 reed relay outputs 

• Relay status register 

• /IRQ and /NMI jumper 
selectable 

• Complete 
documentation 

• $79.95 kit 

• $95.00 assembled 
and tested 


AD-68A ANALOG-TO DIGITAL CONVERTER 



8 Analog inputs 
(0-2.5v) 

Single ramp, software 
driven conversion 
8 bit; 9.6 ms maximum 
Complete 
documentation 
$39.95 assembled 
and tested 


For SWTPC 6800 type computer Write for more 
information. »^128 


Terms US and Canada add 5% shipping Others add 
15% US funds only. TX residents add 5% tax VISA and 

• jAg, _ MCok 

|T Innovative Technology 

5)0 Oxford Park • Garland. TX 75043 • (214) 270-8393 


s 

s 


8 

O 



Featuring 

High Ovality Commarciat. 
and Economy Modala 
Computer Con colas tor 
SI 29 96. 

Printer Stands *39.95 
Compter* TR$-*0 SuBmass 
System, btrilMn. 


Custom furniture far the 
TftS~80 off ice or home decor. 

-FOR 24 HOUR INFORMATION- 
PHONE 408-946-1265 

a\ /|- 1 auo«o-¥iofo2485 AUTUMNVALE AVE. 
r\ a D *v*r«u» SAN JOSE, CA. 95132 
Dealer inquiries invited 


RECYCLE(D) 
SOFTWARE 

BUY * SELL * SWAP 

Featuring 
Free User Advertising 
Pay Only If You Sell Commercial Advertising 
Readers Service 

Mailed 1st Class 
1 yr. (12 issues) ☆ $7.00 

THE SOFTWARE TRADER 

423 Bedford Rd., Schenectady. NY 12308 

Craig Todtschinder. Publisher 

T HE BEST WAY TO DETERMINE IF 
THE SOFTWARE TRADER - 
CAN BE OF VALUE TO YOU 
IS TO TRY A... 

pasts mm-wm 


184 Microcomputing, October 1980 


iS 192 




cantly better than the 68000 in this cate- 
gory. 

The Z8000 slips behind both the 8086 and 
68000 in execution time. The main reason 
for this is the Z8000’s slow clock speed and 


memory timing. Memory cycles require 750 
ns, compared to 500 ns for the 6809, 68000 
and 8086. 

The Z8000’s best category is ease of pro- 
gramming. It requires fewer instructions to 


program my benchmarks than the other mi- 
croprocessors. However, because of the 
“special case” nature of the Z8000’s in- 
struction set, it (like the Z-80) is actually 
much more difficult to program than the f ig- 






* 

* 

6809 

TABLE LOOKUP ROUTINE 





# 

84 MICROSECONDS 






* 

8 INSTRUCTIONS 






* 

* 

21 BYTES 


4000 




* 

START 

ORG 

$4000 

SET PROGRAM ORIGIN 

4000: B6 

50 

00 



LDA 

BYTE 

GET BYTE TO BE SEARCHED FOR 

4003: B7 

50 

OB 



STA 

TABEND 

SAVE IN DUMMY TABLE ENTRY 

4006: 8E 

50 

01 



LDX 

#TABLE1 

GET SEARCH TABLE ADDRESS 

4009: A1 

80 



SEARCH 

CMPA 

, X+ 

CHECK FOR MATCH AND INCREMENT TABLE POINTER 

400B : 26 

FC 




BNE 

SEARCH 

LOOP BACK IF NOT 

400D: 8C 

50 

OB 



CMPX 

#TABEND 

CHECK FOR MATCH ON DUMMY ENTRY 

4010: 22 

03 




BHI 

ERROR 

GO PROCESS ERROR IF SO 

4012: A6 

88 

OA 


« 

LDA 

OFFSET- 1, X 

OTHERWISE, GET CORRESPONDING ENTRY FROM DATA TABLE 





* 

* 

-END OF ROUTINE 


4013 




ERROR 

EQU 

* 


4015: 20 

FE 



END 

* 

BRA 

END 

LOOP 





* 

* 

-DATA 

AREAS 


5000 





ORG 

$5000 


5000: 00 




BYTE 

FCB 

0 

CONTAINS VALUE TO SEARCH FOR 

5001: 00 

01 

02 

03 

TABLE1 

FCB 

0, 1 1 2. 3, 4, 5, 6, 7, 

8,9 SEARCH TABLE 

04 

05 

06 

07 





08 

09 







500B : 00 




TABEND 

FCB 

0 

DUMMY ENTRY 

500C : 00 

01 

02 

03 

TABLE2 

FCB 

0, 1/2, 3, 4, 5, 6, 7, 

8,9 CORRESPONDING DATA TABLE 

04 

05 

06 

07 





08 

09 







000B 




OFFSET 

EQU 

TABLE2-TABLE1 

OFFSET BETWEEN TABLES 







Listing 5. 6809 table lookup routine. 





* 

* 

6809 

BLOCK MOVE SUBROUTINE AND CALLING SEQUENCE 





* 

1109 

MICROSECONDS 






* 

11 

INSTRUCTIONS 






* 

* 

25 

BYTES 






* 

* 

—CALLING SEQUENCE 


4000 




START 

ORG 

$4000 

SET PROGRAM ORIGIN 

4000 8E 

42 

00 



LDX 

#FRQM 

LOAD ADDRESSES OF SOURCE AND 

4003: 10 

8E 

43 

00 


LDY 

#T0 

DESTINATION FIELDS 

4007: BD 

41 

00 


* 

JSR 

MOVE 

CALL BLOCK MOVE SUBROUTINE 





* 

» 

—END OF ROUTINE 


400A: 20 

FE 



END 

* 

BRA 

END 

LOOP 





* 

* 

—DATA 

AREAS 


4200 




FROM 

EQU 

$4200 

SOURCE FIELD 

4300 




TO 

* 

EQU 

$4300 

DESTINATION FIELD 





* 

* 

-BLOCK MOVE SUBROUTINE 


4100 





ORG 

$4100 

SET SUBROUTINE ORIGIN 

4100: 34 

10 



MOVE 

PSHS 

X 

SAVE SOURCE FIELD ADDRESS ON STACK 

4102: A6 

80 



MuVEl 

LDA 

, X+ 

GET A BYTE FROM SOURCE FIELD AND INCREMENT POINTER 

4104: A7 

AO 




STA 

, Y+ 

SAVE IN DESTINATION FIELD AND INCREMENT POINTER 

4106: 81 

OD 




CMPA 

#$0D 

CHECK FOR CARRIAGE RETURN JUST MOVED 

4108: 26 

F8 




BNE 

M0VE1 

LOOP BACK IF NOT 

4 1 OA : IF 

10 




TFR 

X, D 

MOVE ENDING SOURCE FIELD ADDRESS TO D REG. 

410C : A3 

El 




SUBD 

, S++ 

SUBTRACT BEGINNING SOURCE FIELD ADDRES FROM IT TO 





* 



CALCULATE NUMBER OF BYTES MOVED 





* 



(ALSO, TAKE SOURCE FIELD ADDRESS OFF STACK) 

410E: 39 





RTS 


EXIT SUBROUTINE 





Listing 6. 6809 block move subroutine and calling sequence. 


Microcomputing, October 1980 185 





* 







* 

6809 

JUMP TABLE ROUTINE 





* 

8 MICROSECONDS 





* 

4 INSTRUCTIONS 





* 

* 

9 BYTES 


4000 



* 

START 

ORG 

*4000 

SET PROGRAM ORIGIN 

4000: 

B6 

50 00 


LDA 

STATE 

GET STATE BYTE 

4003: 

48 



ASLA 


MULTIPLY BY 2 

4004: 

8E 

50 01 


LDX 

#JMPTBL 

LOAD JUMP TABLE ADDRESS 

4007: 

6E 

96 

* 

JMP 

C A> X3 

GET JUMP TABLE ENTRY AND JUMP WHERE IT POINTS 




* 







* 

dry L/ ur nuu i irac. 


4009: 

20 

FE 

END 

* 

* 

BRA 

END 

ADC AC 

LOOP 






nKtnw 


5000 




ORG 

*5000 


5000: 

00 


STATE 

FCB 

0 

STATE BYTE 

5001: 

4009 4009 
4009 4009 
4009 4009 

JMPTBL 

FCW 

END. END. END. END. 

END, END JUMP TABLE 






Listing 7. 6809 jump table routine. 


ures indicate. 

The 6809 does surprisingly well consider- 
ing its 16-bit competition. It consistently 
outperforms all of the previously tested 
eight-bit microprocessors in all categories. 
Its execution time ratings are better than 
both the LSI-1 1/23 and the 9900. Its memory 
utilization is second only to the 8086. This is 


SUPERIOR SOFTWARE PACKAGES 

DISK BASED TRS-80* 

SMARTTERM *$79.95 

UNQUESTIONABLY THE BEST 
SMART TERMINAL PACKAGE 
FOR THE TRS-80 
•True Break Key 
•Auto Repeat (Typomatic) keys 
•Programmable ‘soft’ keys 

• Forward/Reverse Scrolling 

Multipage Display 
•Transmit from Disk File, Screen 
or Buffer 

• Receive to Disk File, Buffer or printer 

• Multi Protocol Capability 

SPOOL-80 • $39.95 

A TRUE DISK-TO-PRINT DESPOOLER 
FOR THE TRS-80 

• Print Disk Files While Running 

Other Programs 

• Prints Compressed Basic Files 
•Includes RS-232 Driver for 

Serial Printers 

CALL US FOR YOUR CUSTOM 
SOFTWARE REQUIREMENTS " 253 

MICRON, INC. Model II 

10045 Waterford Drive Versions 
Ellicott City, MD 21043 Available 
(301)461-2721 Soon 

• TRS-80 is a Trademark of Tandy Corp. 


impressive for what amounts to an up- 
graded 6800. 

However, I must disclaim the 6809’s good 
numerical performance in the multiplica- 
tion benchmark. Since the 6809 does not 
have a divide instruction, its real perfor- 
mance in arithmetic processing will be 
much less than indicated by my bench- 
mark. Even so, the 6809 should perform bet- 
ter in arithmetic processing than the older 
eight-bit microprocessors. 

Conclusions 

All of the microprocessors perform quite 
well. The overall rating index for the lowest- 
ranked microprocessor is only 50 percent 
higher than that for the highest-ranked one. 
With such a small variance in performance, 
price may therefore become the deciding 
factor when choosing between the micro- 
processors in this comparison. 


The new 16-bit microprocessors offer sig- 
nificant improvements in performance over 
their eight-bit predecessors. On the aver- 
age, the 16-bit microprocessors executed 
my benchmarks two to three times as fast 
as the earlier eight-bit microprocessors. 
Their benchmarks also required about half 
as many instructions and 25 percent less 
memory space. However, as demonstrated 
by the 6809, eight-bit microprocessors can 


Microprocessor 

Clock Frequency/Cycle Time 

8086 

8 MHz clock frequency 

68000 

8 MHz clock frequency 

Z8000 

4 MHz clock frequency 

6809 

2 MHz clock frequency 

LSI-1 1/23 

300 ns micro-cycle 

9900 

4 MHz clock frequency 

Table 1. Clock frequencies. 


* 

* 6809 MULTIPLY ROUTINE 

# 

* 21 MICROSECONDS (FOR 16 BITS) 

* 3 INSTRUCTIONS 

* 7 BYTES 


* 


4000 




START 

ORG 

*4000 

SET PROGRAM ORIGIN 

4000: 

B6 

50 

00 


LDA 

NUM1 

GET MULTIPLICAND 

4003: 

F6 

50 

01 


LDB 

NUM2 

GET MULTIPLIER 

4006: 

3D 



* 

MUL 


MULTIPLY THEM 





* 

cmh 

HC DDIITTKJC 








Ur nUU 1 1 Pit 


4007: 

20 

FE 


END 

* 

BRA 

END 

LOOP 





* 


AREAS 







DATA 


5000 





ORG 

*5000 


5000 

OO 



NUM1 

FCB 

0 

MULTIPLICAND 

5001: 

00 



NUM2 

FCB 

0 

MULTIPLIER 


Listing 8. 6809 multiply routine. 


186 Microcomputing, October 1980 


PMC-80 

Level II 16K at $645 



SOFTWARE COMPATIBLE 


• Reads all Level II BASIC tapes 

• Reads all SYSTEM tapes 

• Full range of peripherals 

The PMC-80 is a “work-alike” computer 
to the popular TRS-80* Model I, Level II 
by Tandy, Radio Shack. The PMC-80 has 
16K bytes of RAM and the complete 
Level II 12K BASIC ROM by Microsoft 
that makes it 100% software compatible 
with programs from Radio Shack and 
from the hundreds of other independent 
suppliers. The built-in cassette player 
reads standard Radio Shack programs 
for the TRS-80.* 

Sold through computer stores. 


• Video output for monitor and TV 

• Optional FASTLOAD at 8000 band 

• Optional Upper/Lower case 

The PMC-80 will operate with any of the 
many peripherals Radio Shack and 
other independent vendors have in- 
vented to plug into the TRS-80.* Most 
importantly, the Interface Adapter per- 
mits Expansion Interfaces with memory 
expansion to 48K to be added. An 
Expansion Interface will also permit the 
addition of Radio Shack compatible 
5 '/4 " disks and disk operating systems, 
RS 232, printers, etc. 

TRS-80 is a registered trademark of Tandv/ Radio Shack. 


Personal Micro Computers, Inc. 

475 Ellis Street, Mountain View, CA 94043 (415) 962-0220 


Reader Service index— page 241 


Microcomputing, October 1980 187 



be made to perform quite well, and actually 
better than some 16-bit microprocessors. 

One of the selling features for the 8086, 
68000 and Z8000 is the amount of memory 
they can access. All three can address mil- 


lions of bytes, which should be plenty for 
most hobbyists. However, I limited my ad- 
dressing range to 65,536 bytes. If more 
memory is addressed, the code will be larg- 
er and slower. ■ 


TABLE LOOKUP BLOCK MOVE JUMP TABLE MULTIPLY 


PROCESSOR 

TIME 

RANK 

INDEX 

TIME 

RANK 

INDEX 

TIME 

RANK 

INDEX 

TIME 

RANK 

INDEX 

8086 : 

1 

37 

1 

. 462 

1 

694 

2 

. 662 

! 6 

2 

677 

19 

3 

1. 000 

1 

68000 : 

43 

2 

. 538 

488 

1 

. 466 

! 5 

1 

565 

11 

2 

. 579 

Z 8000 : 

48 

3 

. 600 

1068 

4 

1. 019 

: 8 

3 

. 903 

20 

4 

1. 053 

6809 i 

84 

4 

1. 050 

1109 

5 

1. 058 

: 8 

3 

903 

21 

5 

1. 105 

LSI-U/23 ! 

94 

5 

1. 175 

1196 

6 

1. 141 

! 10 

6 1 

129 

31 

7 

1. 632 

370-145 ! 

i 

109 

6 

1. 362 

1027 

1 

3 

980 

i 8 

3 

. 903 

10 

1 

. 526 

1 

9900 ! 

145 

7 

1.812 1 

1 

1 1756 

7 

1. 675 

i 17 

7 1 

919 

21 

5 

1. 105 

I 

AVERAGE ! 

80 


! 

1 

1 1048. 

3 


i 8. 

9 


19 




Table 2. Execution time (in microseconds). 


TABLE LOOKUP BLOCK MOVE JUMP TABLE MULTIPLY 


PROCESSOR ! 

NO. 

RANK 

. INDEX 

NO. 

RANK 

INDEX 

NO. 

RANK 

INDEX 

NO. 

RANK 

INDEX 

8086 : 

8 

2 

i 

1.057 S 

11 

2 

1. 013 : 

3 

1 

. 778 

! 

2 

1 

933 

68000 l 

1 

8 

2 

1.057 ! 

11 

2 

1. 013 ! 

4 

3 

1. 037 

2 

1 

933 

1 

Z8000 1 

5 

1 

. 660 : 

8 

1 

2 

. 737 1 

4 

3 

1 037 

2 

1 

933 

6809 

8 

2 

1.057 ! 

11 

2 

i.oi3 : 

( 

4 

3 

1 037 

3 

7 1 

. 400 

LSI-11/23 : 

8 

2 

1. 057 ! 

11 

2 

1 

1 013 ! 

| 

3 

1 

778 

2 

1 

. 933 

370-145 ! 

8 

2 

1. 057 1 

13 

7 

1 

1. 197 \ 

5 

7 

1. 296 

2 

1 

. 933 

9900 1 

5 

8 

2 

1. 057 ! 

11 

2 

1.013 ! 

4 

3 

1. 037 

2 

1 

. 933 

AVERAGE } 

7. 6 

> 

1 

10 9 


3. S 

} 


2. 1 




Table 3. Ease of programming (in number of instructions). 


TABLE LOOKUP BLOCK MOVE JUMP TABLE MULTIPLY 


PROCESSOR ! 

NO. 

RANK INDEX 

NO 

RANK INDEX 

NO. 

RANK 

, INDEX 

NO. 

RANK 

i INDEX 

8086 ; 

17 

1 

. 708 

21 

1 

. 728 ! 

10 

2 

886 

! 7 

1 

. 907 

68000 ! 

26 

4 

1. 083 

28 

4 

. 970 ! 

12 

4 

1. 063 

8 

3 

1. 037 

Z8000 ! 

20 

2 

833 

26 

3 

. 901 ! 

12 

4 

1. 063 

8 

3 

1. 037 

6809 ! 

| 

21 

3 

875 

25 

2 

866 : 

9 

1 

. 797 

7 

1 

. 907 

LSI-11/23 : 

26 

4 

1 . 083 ! 

I 30 

5 

1. 040 1 

10 

2 

886 

8 

3 

1 037 

370-145 I 

j 

32 

7 

1. 333 

42 

7 

1. 455 ! 

14 

7 

1.241 ! 

8 

3 

1. 037 

9900 ! 

t 

26 

4 

1.083 ! 

1 

30 

5 

1 . 040 ! 
S 

12 

4 

1 . 063 ! 

8 

3 

1. 037 

AVERAGE t 

24 



28. 9 

l 

11. : 

3 

! 

7 7 



; i i 

Table 4. Memory utilization (in bytes). 



Credits 


Thanks to the following people who 
helped with this update: Jim Howell, for the 
6809 code; Don Barnes of Motorola, for the 
6809 and 68000 info; and Paul Stapinski of 
AMD, for the 28000 info. 


For a further look at the 8086, 68000 and 
Z8000 16-bit microprocessors, see Kilo- 
baud Microcomputing. “The 16-Bit Super 
Processors Are Here,” August 1980, p. 26. 


AVERAGES BY BENCHMARK 


! 

PROCESSOR 1 

TABLE 

RANK 

LOOKUP 

INDEX 

BLOCK 

RANK 

MOVE 

INDEX 

JUMP 

RANK 

TABLE 

INDEX 

MULTIPLY 
RANK INDEX 

8086 1 
1 

2 

. 742 1 

1 

» 

. 801 : 

1 

. 780 ! 

3 

947 

1 

68000 : 

3 

. 893 1 

I 

2 

. 816 : 

2 

. 888 i 

2 

. 850 

Z8000 1 

• 

1 

1 

. 698 1 

3 

886 : 

5 

1.001 1 

4 

1. 008 

i 

6809 1 

4 

. 994 1 

) 

4 

. 979 1 

3 

. 912 1 

6 

1. 137 

LSI-U /23 ! 

• 

5 

1 

1. 105 1 

5 

1.065 I 

4 

. 931 1 

7 

1. 201 

1 

370- 14S I 

1 

6 

1.251 1 

1 

6 

1.211 1 

6 

1. 147 1 

1 

. 832 

9 

9900 ! 

7 

• 

1.317 1 

7 

1.243 1 

7 

1. 340 1 

5 

1. 025 


I 


Table 5. Averages by benchmark. 


AVERAGES BY CATEGORY 


I 

1 

1 

EXECUTION 

TIME 

EASE OF 
PROGRAMMING 

MEMORY 

UTILIZATION 

OVERALL 

« 

PROCESSOR I 

RANK 

INDEX 

RANK 

INDEX 

RANK 

INDEX 

RANK 

INDEX 

8086 : 

2 

1 

. 700 1 

2 

. 945 ! 

1 

. 807 ! 

1 

. 817 

68000 1 
1 

1 

537 1 

4 

1.010 1 

5 

1 . 038 1 

2 

. 862 

i 

Z8000 1 

3 

. 894 i 

1 

. 842 I 

3 

. 958 1 

3 

. 898 

6809 

5 

1.029 1 

7 

1. 127 1 

2 

. 861 1 

4 

1. 006 

LSI-1 1/23 1 
• 

6 

1. 269 1 

2 

. 945 1 

4 

1. 012 1 

5 

1. 075 

1 

370-145 \ 

9 

4 

. 943 1 

6 

1. 121 1 

7 

1. 266 : 

6 

1. 110 

1 

9900 1 

1 

7 

1.628 I 

4 

1.010 1 

6 

1. 056 1 

7 

1. 231 


Table 6. Averages by category . 


TRS-80 is a registered trademark ol TANDY CORP. 

SYSTEM 
EXPANSION 


TRS-80" 



PC BOARD 
USER MANUAL 


«] 


^ ’ .■** 

■imp? 



• SERIAL RS232C 20mA I/O 

• FLOPPY CONTROLLER 

• 32K BYTES MEMORY 

e PARALLEL PRINTER PORT 

• DUAL CASSETTE PORT 

• REAL-TIME CLOCK 

• SCREEN PRINTER BUS 

• ONBOARD POWER SUPPLY 

• SOFTWARE COMPATIBLE 

• SOLDER MASK, SILK SCREEN 

LNW " 198 

RESEARCH 

8 Hollowglen St. Irvine CA 
714-552-8946 92714 

TO ORDER 

PO Box 16216 Irvine CA 92713 


Master Charge & VISA orders now accepted 


WE LEW 

EXPENSIVE PROGRAMS 
YOUCANBUY. 


NONPROFIT PEOPLE'S SOFTWARE 

Up to 77 high-quality programs 
TRS-80 Lev. II: only $10.95! 

Tape 3. People's Pascal I $19.95 

Tape 6P, PASPATCH, patches old Pascal II (no 
longer avail.) to use printer, floppy $15.00 

Tape 1, 34 bus., edu'l., game programs $10.95 
Tape 2, 77 programs from Osborne book: 'Some 

Common Basic Programs' $10.95 

Tape 5, 24 bus., edu'l., game programs $10.95 

Tape 7, 31 bus., edu'l., game programs $10.95 

Tape 8, incl. high-speed tape loader, more $10.95 
Overseas, $1 postg. per tape; CA res. add tax 


^ 133 COMPUTER 
— INFORMATION 
^ EXCHANGE 

Box 159 San Luis Rey CA 92068 



1 

( 



AVERAGES 

BY 

BENCHMARK 


9 

PROCESSOR 1 

TABLE LOOKUP 


BLOCK MOVE 


JUMP TABLE 

MULTIPLY 

1 

8085 5 

. 938 

I 

. 947 

1 

S 

. 917 1 

. 905 

8086 1 

l 

. 573 

1 

1 

. 754 

1 

1 

. 472 1 

1 

. 134 

1 

1 

« 



AVERAGES 

BY 

CATEGORY 


1 

PROCESSOR ! 

EXECUTION 

TIME 


EASE OF 
PROGRAMMING 


MEMORY 

UTILIZATION 

OVERALL 

8085 1 

• 

. 780 

1 

1 

• 

1. 000 

1 

1 

1 . 000 1 
1 

. 927 

8086 i 

. 339 

1 

. 458 

1 

1 

. 654 1 

. 484 


i i i 


Table 7. 8085, 8086 compared to 8080. 


MR. RAINBOW announces.. 


our all new 1980 
catalog and prompts 
you to peek at the 
latest collection of 
software and 
hardware products 
for your apple ir 



write or call today 
for your free 1980 
catalog. 

Carden Plaza snopping center Deot 9KB 

9719 Reseda Boulevard Northrioge, California 91324 (215)349-5560 


v* Reader Service index— page 241 


Microcomputing, October 1980 189 



MAGIC WAND 

$349.00 


MANY ARTICLES HAVE PRAISED THIS CP/M* 
BASED WORD PROCESSING SOFTWARE AS 
THE BEST NOW, THE BEST IS EVEN BETTER ! 
VERSION 1.1 ADDS SUCH CAPABILITIES AS 
FORMATTING TO THE SCREEN AND BI- 
DIRECTIONAL PRINTING. THIS TRULY RE- 
MARKABLE SOFTWARE CAN BE YOURS FOR 
THIS TRULY REMARKABLE PRICE. SEND 
CHECK OR MONEY ORDER (TEXAS RESIDENTS 
ADD 5% TAX) TO: 



WORD WIZARDS 

5814 JESTER DR. 

GARLAND. TEXAS 75042 

iS 284 


MAGIC WANO IS A TRADEMARK Of SMALL BUSINESS APP INC C/PM IS A 
REGISTERED TRADEMARK OF DIGITAL RESEARCH CORP REQUIRES 8080/780 
CP/M AND 32K RAM 



4 TONE SIGNALING 

Generators 

For Any Rotary Phone 

Soft-Touch ' Porta-Touch 

$34.95 $59.95 

Add $1.00 for shipping. Tex. Res. add 5% Sales Tax. 
Replaces mouth piece on For use with GTE where Soft- 

most phones for direct con- Touch will not fit. Held over 

nection with Soft-Touch mouthpiece to amplify signal 

tone. FCC Approved. tones. 9 volt battery powered. 

• Phone Banking • Mobile Radio • Central Dictation • Paging • 
Check Verification • WATS extender • Order Entry • Call 
Diverters • SPC Sprint. MCI Execunet. ITT City-Call • 


R & R Marketing ^46 

P.O. Box 120005 
Arlington, Tex. 76012 
817/277-4198 





AVERAGES 

BY 

BENCHMARK 


PROCESSOR : 

TABLE LOOKUP 

BLOCK MOVE 


JUMP TABLE 

MULTIPLY 

6809 

1 

. 785 1 

. 775 

1 

. 481 1 

. 241 

68000 : 

1 

. 714 1 

. 665 

1 

. 474 1 

. 192 



AVERAGES 

BY 

CATEGORY 


PROCESSOR ! 

EXECUTION 

EASE OF 


MEMORY 

OVERALL 


TIME 

PROGRAMMING 


UTILIZATION 


6809 1 

. 591 

1 

. 503 

1 

1 

1 

. 618 1 
« 

. 571 

68000 1 

i 

. 303 1 

. 486 

1 

! 

1 

I 

. 745 S 

. 511 

Table 8. 6809, 68000 compared to 6800. 


1 

1 

1 


AVERAGES 

BY 

BENCHMARK 


PROCESSOR ! 

TABLE LOOKUP 

BLOCK MOVE 


JUMP TABLE 

MULTIPLY 

1 

Z8000 1 

1 

1 

. 719 1 

1 

. 933 

1 

. 607 1 

i 

. 219 

f 


AVERAGES 

BY 

CATEGORY 


1 

PROCESSOR ! 

EXECUTION 

TIME 

EASE OF 
PROGRAMMING 


MEMORY 

UTILIZATION 

OVERALL 

{ 

Z8000 ! 

\ 

. 532 1 

. 445 

1 

1 

1 

. 881 1 
1 

619 


Table 9. Z8000 compared to Z-80. 


FIFTY BUS SYSTEMS 


32K 6800s from $1694.59 

32K 6809s from $1844.69 

Include: Chassis, CPU, 32K Static Ram, I/Os 
Fully Expandable 


2114L 300ns STATIC RAM CHIPS $5.90 

PAPTHRY PRIMP From the same shipment we use in our 
rHOiuni mime professional quality boards. 

Add $5.00 Handling on Orders Under $200.00 


32K STATIC RAM BOARD 

FOR THE SS50 AND SS50C BUS (SWTP etc.) 

• SS50C Extended Addressing (can be disabled). 

• 4 separate 8K blocks • Low power 2114L RAMS 

• Socketed for 32K • Write Protect 

• Gold Bus Connectors 


16K $328.12 

24K $438.14 

32K $548.15 


Phone, write, or see your dealer for details and prices on our 
broad range of Boards and Systems for the SS50/SS50C 
BUS including our UNIQUE 80x24 VIDEO BOARD, and our 
AC Power Control Products for all computers. 


Eimix (5i 

1337 W. 37th Place • Chicago, IL 60609 
(312) 927-5510 • TWX 910-221-4055 
The Company that delivers. 

Quality Electronic products since 1975. 

GIMIX® and GHOST® are Registered Trademarks of GIMIX INC. 



DEPRECIATION 

PROGRAM 


* 5 DEPRECIATION RATES 

* UP TO 99 YR TERM 

* RECORDS UP TO 600 ITEMS ON DISK 

* UP TO $1 MILLION FOR EACH ITEM 

* REPORTS EACH MONTH, QUARTER, OR 
ANNUALLY 

* BONUS DEPR., INVESTMENT CREDIT 

* PRO RATES DEPRECIATION 

* UPDATE RECORDS EACH YEAR 


EQUIPMENT INVENTORY 

FISCAL YEAR BASED 

CONVERT METHODS ANY TIME ^ 

AN ACCOUNTANTS DREAM - 
-o* 

APPLESOFT 32 K MIN ^O c ,S2*Mnr$1SO. 00 

HANDBOOK $5.00 

is 24 

MONEYDISK 
516 WELLSIAN WAV 
RICHLAND, WA 99352 


VISA 8. M/C USERS -CALL 
509 943-9004 



APPLE IS A REGISTERED TRADEMARK 
OF APPLE COMPUTER INC. 

WA Ratidtntt, add 5% Ml«t tax 

DEALER INQUIRIES INVITED 


CORRESPONDENCE INDEX 

MAGAZINE ARTICLE DATA BASE 
AUTOMATED AUTHORS NOTEBOOK 
RECIPE DATA BASE 

AH are current applications of INFORMATION 
MASTER, a simple yet powerful information retrieval 
program for CP/M systems. Don’t worry about key fields 
and maximum field length, that is for accounting systems. 
Retrieve essentially unlimited text using combinations of 
keywords to quickly find exactly what you want. Search a 
500 entry data base in 12 to 15 seconds. 

INFORMATION MASTER runs on 8080 or Z-80 mi- 
crocomputers using a CP/M compatible operating system 
and having at least two disk drives and 32K of memory. 
On 8” single density and many popular 5” disk formats. 
Write for currently available formats and notes on the 
above applications. 

INFORMATION MASTER program is shipped ready 
to run, on disk with demonstration data base and 22 page 
users manual. 

— $37.50, postage paid — 

Eland Cybernetics ** 779 

P.O. Box 208, Port Aransas, TX 78373 
(512) 749-5843 


190 Microcomputing, October 1980 


CP/M® 


- based Business Software for TRS-80® 2 computers on 
. . . the fastest Mod-ll CP/M with the most features!!! 


• Over 610,000 bytes/disk 

• Downloading package included 

• 1,200 baud operation of serial 
printers without data loss 

• Single drive backup 

MOD-II CP/M $250.00 


• Mixed single/double density on any 
of 4 drives (even a 1 -drive system) 

• Ultra-fast disk operation 

• Emulation of cursor addressing for 
any of several “dumb” CRTs 

MOD-1 CP/M $150.00 


• Auto-LF printer support & ASCII 

top-of-form software (LPIII) 

• Supplemental document describing 

our implementation 

• User-settable function keys 

CBASIC2® 3 (Mod I or II) $1 10.00 


The following software for Mod-ll CP/M only unless otherwise stated (*-requires CBASIC2): 


RM/COBOL® 4 - Only COBOL for CP/M with alternate keys (multi- 
key ISAM), CRT screen handling, interactive debug, Z80 code, and 
the most useful Level 2 features. Compatible with Tandy’s 

COBOL-but runs faster! $495.00 

PMS (Property Management System) - Interactive, menu-driven 
system includes full G/L, budgeting, cash journal, delinquency 
list, tenant activity/rent roll, complete audit trail and reports 

on vacancies, lost rent, and vendors $650.00* 

demo disk & manual 75.00* 

APH (Automated Patient History) - General-purpose question- 
asking, answer-printing system furnished as self-administered 
review-of-systems general patient history (Mod-1 also) . . . $1 75.00* 


MAGIC WAND® 5 - Full-feature word processing, true proportional 
spacing, file merging, and use of full-screen editor for source 

programs or data $400.00 

RPA(Residential Property Analysis) -Analyzes income and expense, 
financing, taxes, inflation and depreciation on home, condo, or 
apartments over a user-selectable time. Shows payoff in terms of 
ROI, Cap rate, cash-on-cash. Amortization schedules and 

worksheet $300.00* 

demo disk & manual 35.00* 

RBC (Rent/Buy Comparison) - Sales or investment tool to compare 
renting and savings account investment vs. purchasing a particular 

property $250.00* 

demo disk & manual 35.00* 


8” single density — 
450’ tape cartridges 


$ 3.00 ea. 
$20.00 ea. 


Osborne & Assoc. CBASIC source programs (Mod-1 also): 

Payroll w/Cost Accounting $250.00* General Ledger w/Cash Journal $250.00* 

Accts. Payable/ Accts. Receivable $250.00* O&A CBASIC Books (ea.) $ 20.00 

\ferbatim® 6 media: (Qty. 100 prices) 

5V4” single density $2.50 ea. 

8” certified double density $4.00 ea. 

8041 Newman Ave., Suite 208 ^ 

Huntington Beach, CA 92647 
(714) 848-1922 


Registered trademark of: 

® 1 Digital Research 
® 2 Tandy Corp. 

® 3 Compiler Systems, Inc. 
® 4 Ryan-McFarland Corp. 

® 5 Small Business Applications, Inc. 
® 6 Verbatim Corp. 


Distributed in U.K. by: 
Microcomputer Applications Ltd. 

11, Riverside Court, 
Caversham, Reading, England 
TEL: (0734) 470425 


commodore 2001 

^ SAVE UP TO 30% 
ON YOUR FUEL BILLS 
MICRO ELECTRONIC 
THERMOSTAT 


pit 



FOR GAS, 
ELECTRIC OR 
OIL HEAT & 
AIR 

CONDITIONING 


i00 


*150 


TAX CREDIT OF 15% ON PURCHASE PRICE 


Night Setback Night A Day Setback 

City 

5°F 

10°F 

5°F 

10°F 

Atlanta 

11 

15 

20 

27 

Chicago 

7 

11 

14 

21 

Los Angeles 

12 

16 

22 

30 

New York City 

8 

12 

16 

23 


INSTALLATION WITH A SCREWDRIVER. 


P.0. Box 6524 
South Bond, IN 46660 
Infomurtlon: (216) 2774655 

Toll Froo Order Lin* ^142 
1 >(800) 227-1617 nL 349 
IN CALIF MM0> 772-3649 «al 346 


CONTROLS, 1 «. UNTO WARRANTY 
COMPLETE WITH INSTRUCTION MANUAL & HR! 


vrsA 

III 


Rand 

Acce 


om 

ccess.inc 


FREE 


Shipping anywhere in 
the Continental U.S. 


CENTRONICS - PARALLEL 


730-1 

YOURS FOR ONLY 

7x7 Dot Matrix • 80 
char. /line • Avg. 30 
lines/min. • 3-way 
paper handling • excellent 
print quality 


$ 



Serial 

Interface 


715 


- 


737£S. , 0M,.X»884 

The same characteristics as the 730-1 but with 
proportional spacing. Great for word processing. 


THE 700 SERIES • 132 COLUMN PARALLEL PRINTERS 


Model 

Avg. lines 
Per Min. 

Dot 

Matrix 

Ribbon 

Cartridge 

Char./ 

inch 

PRICE 

700-9 

40 

9x7 

Std. 

10 

*1,287 

701-9 

70 

9x7 

Std. 

10 

1,596 

702-9 

140 

9x9 

Std. 

10 

2,155 

703-9 

200 

9x9 

Std. 

10 

2,685 


Send your order, shipping address, tel. no. and 
your personal or company check or money order to: 


SLECTRONICS -» 

205 Lewis St., Lynn. Mass. 01902 
(617) 599-5231 Sorry - NO Phone orders 
2-6 weeks delivery • Mass. Res. add 5% tax 




677 



iS Reader Service index— page 241 


Microcomputing, October 1980 191 


Machine-Language Techniques 

For the 1 802 


Puts zip into the COSMAC VIP. 


Gerald Strope 
1504 Strothmore Court 
Raleigh , NC 27609 


T he RCA COSMAC VIP is a 
single-board processor us- 
ing the 1802 chip. The processor 
hardware is well explained in 
two articles entitled “COSMAC 
Double Play” in the May 1979 
issue of Kilobaud Microcomput- 
ing, so I will not repeat that here. 
This article will deal with the use 
of machine language in the VIP. 

Introduction 

The CHIP-8 language that 
was developed for the COSMAC 
VIP is quite versatile for use in 
programming many varied appli- 
cations. It is my opinion, though, 
that all CHIP-8 programmers will 
come to a point where they will 
want to do some particular func- 
tion that is not possible in 
CHIP-8, and will need to write a 
machine-language subroutine. 

This article is a collection of 
ideas and techniques I have 
compiled while trying to put ma- 


chine language to work in the 
VIP. I hope some of these ideas 
will be useful to you when you 
try your first machine-language 
subroutine. I don’t intend to 
write a tutorial on the CHIP-8 or 
1802 instruction set in this ar- 
ticle. CHIP-8 is covered well in 
the COSMAC VIP instruction 
manual, and I suggest you read 
Tom Pittman’s “A Short Course 
In Programming” (Netronics, 
333 Litchfield Rd., New Milford 
CT 06776) for 1802 machine-lan- 
guage basics. I will try to explain 
my programs in enough detail 
so the reader will be able to un- 
derstand them, assuming the 
reader has some background in 
CHIP-8 and 1802 machine 
language. 

After assembling my COS- 
MAC VIP kit and testing it out, I 
first wanted to try using some 
Elf-2 programs I had seen in vari- 
ous magazine articles. I ran into 
some differences almost imme- 
diately in Elf-2 and VIP hard- 
ware. The first problem I ran into 
is that the Elf-2 programs use a 
6C instruction to input a byte 
from the keyboard. The 6C in- 
struction is not valid on the VIP; 


ADDRESS 

CODE 

STEP 

COMMENTS 

0000 

F800BB 

0 

Display-page 0 

03 

F806B2 


R2-06CF, stack pointer 

06 

F8CFA2 



09 

F881B1 


Rl-8 146/ refresh routine 

OC 

F846A1 


In ROM 

OF 

90B3 


R3-0015, main program 

11 

F815A3 


reg Ister 

14 

D3 


R3»program counter 

15 

E 269 


X-R2, turn on TV 

17 

3017 


branch to 0017 (stop loop) 


Listing 1. 


ADDRESS 

CODE 

STEP 

COMMENTS 

0017 

F800B4 

1 

put 00 Into R4.1, 

1A 

B5BAAC 


R5. 1/ RA , 1, RC.O 

ID 

F827A4 


R4-0027 

20 

F8C8A5 


R5-00C8 

23 

F8E0AA 


RA-00E0 

26 

D4E5 


P-R4, X-R5 

28 

62 

2 

m at RX Isd to keyboard latch 

29 

3637 


branch If EF3-1 

2 B 

25F0 

3 

R5-1, m at RX-*0 

2D 

FC0155 


add 01/ store In m at R5 

30 

F0FB10 


m at RX-»D/ OR 1mm 10-D 

33 

324D 


branch If D-0 

35 

3052 


go to 0052 

37 

25F0 

4 

R5-1/ m at RX-»D 

39 

8C3A63 


RC.0**D/ branch If D not 0 

3C 

F05A 


m at RX-»D/ store In m at RA 

3E 

3E437B 


wait for key released 

41 

303E 


and turn Q on 

43 

4A2AFE 


m at RA-4D/ RA-1/ shift 

46 

FEFEFE 


left four times 

49 

1C5A 


RC+1/ store In m at RA 

4B 

305A 


go to 005A 

4D 

FC0055 

5 

reset m at R5 to 00 

50 

3028 


go to 0028 

52 

0AFBA1 

6 

m at RA-*D/ OR Imm Al-D 

55 

3A28 


branch If D not 0 

57 

7B3028 


turn on Q/ go to 0028 

5A 

F820B6 

7 

load 20 1 nto R6. 1 

5D 

26 


R6-1 

5E 

963228 


R6.0+D, branch If D-0 

61 

305D 


go to 005D 

63 

2CF0EA 

8 

RC-1/ m at RX-*D/ X-A 

66 

FI 


M at RA or-D 

67 

E55A7B 


X-5/ store D In m at RA/ Q on 

6A 

3E5A 


branch to 005A when key released 

6C 

306A 


go to 006A 




Listing 2. 


the VIP uses a keyboard scan 
technique instead (see Fig. 1). 

Another difference is the use 
of the 64 output instruction in 
the Elf programs. This output in- 
struction will do nothing on the 
VIP because it does not have an 
output indicator. The TV display 
is used for all output. 

Inputting and Outputting Data 

I will go into methods of solv- 
ing both of these problems later 
in this article, but first let’s kick 
off the display so we can see 
what we are doing. The program 
in Listing 1 will set up the proper 
pointers to use the refresh rou- 


tine in the 512 byte ROM. Regis- 
ter B.1 contains the desired dis- 
play page (page zero, in this 
case). Register 2 is the stack 
pointer. Register 1 points to the 
refresh routine in the ROM. 
Register 3 is the main program 
register. There is a branch to 
itself in position 0017 that we 
will remove when we add on to 
this program in the next step. 

Now page 0 of RAM is dis- 
played on the screen. This is 
convenient because now we will 
enter a program into page 0, and 
you can watch a scan loop for 
the keyboard increment and see 
a shift instruction operate. If 


192 Microcomputing, October 1980 


1534- FE10 

iaxa mi 

nan-M-E lnaai 


The addition program with an answer without a carry from the high The addition program with an answer with a carry from the high 
order position. order position. 


you forget a step, as I have done, 
you can watch your program 
change and disintegrate before 
your very own eyes. If you see 
this happening, hit the reset 
quickly before the refresh point- 
ers are wiped out. If that hap- 
pens, you have to go back to 
0000 and enter it all again. 

With the program displayed 
on the screen, it is sometimes 
easy to see if a register is incre- 
menting when you don’t want it 
to: Bytes of data will fill up the 
screen until they crash into part 
of the program, or some other 
similar indication. 

Listing 2 will scan the key- 
board, input a byte of data, 
place this byte of data in mem- 
ory location 00E0 and check to 
see if the byte= hex A1. If it 
equals A1, turn on the Q light. 

The program works as 
follows: 

Step 1— Initialize. 

Step 2— Load the least signi- 
ficant digit (LSD) of memory at 
register 5 into the keyboard 
latch and test for an EF3 = 1 . 

Step 3— Scan 00-10 through 
memory at register 5. When it 
equals 10, branch to step 5. 

Step 4 -Program is at this 
step because an EF3 = 1 oc- 
curred. Take memory at R5 loca- 
tion (this is equal to the key 
pressed) and store in memory at 
register A. Wait for key released, 
then shift data into the left half 
of the byte and store back at RA 
memory location. Increment 
register C, which acts as a flip- 
flop indicator to determine if the 


left or right half of the byte is be- 
ing entered. Branch to de- 
bounce routine at step 7. This 
wastes time to make sure the 
key is fully up before turning the 
program loose to start scanning 


again. 

Step 5— Reset memory at R5 
location to 00. 

Step 6— Turn on Q if memory 
at RA = hex A1 (this step is just 
to demonstrate that a full byte 


of data can be entered for the 
program to examine). 

Step 7 — Debounce time 
delay. Hex 20 is loaded into 
register 6.1. The register is dec- 
remented until R6.0 = 00. 


4PPRLSS 

zm. 

STEP 

. COMMENTS 

0200 

630F 

1 

V3-0F 

02 

6400 


V4-00 

04 

6600 


V6-00 

06 

6700 


V7-00 

08 

A300 


1-300 

0A 

F00A 

2 

V0-hex key digit (waits for 
any key pressed) 

OC 

0500 


Do machine language routine at 0500 

0E 

F10A 


VI- hex key digit 

10 

8011 


Let V0-V0 logically ORed with VI 

12 

F055 


Store V0 In memory at 1, 1+1 

14 

7401 


V4 + 01 

16 

3404 


Skip if V4-04 

18 

1 20A 


Go to 20A 

1A 

12 1C 


Go to 21C (no-op) 

1C 

A 3 00 

3 

1-300 

IE 

F265 


Let V0,V1,V2» memory at I/I+1/I+2 

20 

650A 

4 

V5-0A 

22 

F029 


Let l*dlsplay pattern for LSD of V0 (LSDP) 

24 

D565 


Show at V5,V6 coordinate 

26 

0540 


Do machine language routine at 0540 

28 

6505 


V5-05 

2A 

F029 


Let I-V0 (LSDP) 

2C 

D565 


Show at V5,V6 

2E 

6514 

5 

V5- 14 

30 

F129 


l-Vl (LSDP) 

32 

D565 


Show at V5,V6 

34 

054D 


Do mach. lang. routine at 054D 

36 

650F 


V5-0F 

38 

F129 


l-Vl (LSDP) 

3A 

D565 


Show at V5,V6 

3C 

7701 

6 

V7*01 

3E 

4701 


Skip If V 7 not 01 

40 

1258 


Go to 258 

42 

4702 


Skip If V7 not 02 

44 

125E 


Go to 25E 

46 

6500 

7 

V5-00 

48 

F229 


I-V2 (LSDP) 

4A 

D565 


Show at V5,V6 

4C 

E39E 

8 

Skip if V3*hex key LSD 

4E 

124C 


Go to 24C 

50 

E3A1 


Skip If V3 not equal hex key LSD 

52 

1250 


Go to 250 

54 

00E0 


e ra se display 

56 

1200 


Go to 200 

58 

7606 

9 

V6 + 06 

5A 

A30 2 


1 -302 

5C 

121E 


Go to 21E 

5E 

7606 

10 

V6*06 

60 

0500 


Do mach. lang. routine at 0500 

62 

A3 02 


1-302 

64 

121E 


Go to 21E 




Listing 3. 


Microcomputing, October 1980 193 





The screen with Listing 2 running. The circled area shows the hex 
character FI, which was entered from the keyboard. 


Step 8 — Program is at this 
step because an EF3 = 1 oc- 
curred. This is the right half of 
the byte being entered. Take 
memory at R5 and OR it with 
memory at RA to make up a full 
byte. Also decrement flip-flop 
register C. 

One additional note on the Q 
latch: It is turned off in the re- 
fresh routine. This program will 
cause the Q audible tone to be 


long on the first half of the byte 
and short on the second half. 
This makes it convenient to be 
able to stay in step when enter- 
•' ing data. 

At this point you might say, 
“Now I have entered a byte of 
data. If it equals A1, the Q light 
will come on with a beep. So 
what?” That might be a valid 
question, but now we have laid 
the groundwork for other ma- 


ADDRESS 

CODE 

STEP 

COMMENTS 

0500 

F806BF 

A 

RF-06F0 

03 

F8F0AF 



06 

OFFE 


Memory at RF-*D, shift 

08 

FEFEFE 


left 4 times 

0B 

5FD4 


D+M at RF, return to CHIP-8 

0D 

F803BC 

D 

RC-0300 

10 

F800AC 



13 

EC 


X-C 

14 

F800F6 


00-*D, shift right (clear DF) 

17 

4CBD 


Memory at 300/ operand 1 high 
order+RD.l/ RC*1 

19 

4CAD 


Memory at 301/ operand 1 low 
order^RD.0/ RC*1 

IB 

1C 


RC* 1 (now-303) 

1C 

8 D 


RD.0+D (operand 1 low order) 

ID 

F4 


Add m at RC *D 

IE 

AD 


D*RD.O (low order answer) 

IF 

2C 


RC- 1 (now-302) 

20 

9D 


RD.l+D (operand 1 high order) 

21 

74 


Add with carry/ m at RC*D/DF 

22 

BD 


D-»RD.l (high order answer) 

23 

5C 


D-*m at RC/ (store high order 
answer at 0302) 

24 

1C8D 


RC* 1/ D , 0-*D 

26 

5C 


D-*m at RC, (store low order 
answer at 0303 

27 

1C3B2E 

E 

RC*1 branch If DF-0 (test 
for carry out of high order) 

2A 

F8015C 


M at RC ( 304 )«01 

2D 

D4 


Return to CHIP-8 

2E 

F8005C 


M at RC ( 30 4 ) -00 

31 

D4 


Return to CHIP-8 

32 

000000 



35 

000000 


00 up to 540 

38 

000000 



40 

F806BF 

B 

RF-06F0 

43 

F8F0AF 



46 

0FF6 


M at RF-»D/ shift right 

48 

F6F6F6 


four times 

4B 

5FD4 


D-*m at RF, return to CHIP-8 

4D 

F8F1AF 

C 

RF-06F1 

50 

0FF6 


M at RF-*D/ shift right 

52 

F6F6F6 


four times 

55 

5FD4 


D-»m at RF/ return to CHIP-8 


Li sting 4. 


HEX KEYBOARD 


62 INSTRUCTION 

©©©© 

®@©@ 

© 0 ®© 

©©©© 

PATA BIT ? * 

DATA BIT 2 

DATA BIT 1 

KEYBOARD 

LATCH 


Fig. 1. Keyboard operation. A 62 
instruction causes the least 
significant four bits of the 
memory byte pointed to by 
register X to be latched in the 
keyboard latch. Only the hex key 
representing those four bits will 
generate an EF3=1 when 
pressed. The normal program- 
ming technique is to scan each 
hex digit into the latch and then 
check for an EF3-1 to tell 
which key has been pressed. 


chine-language programs to 
build on. 

We now have a subroutine 
that could be used with any Elf-2 
program, for instance. We are 
now able to input variables to a 
program when needed. If you 
look carefully at position 00E0 
on the screen, you will see the 
character entered. This is one 
way of outputting data, al- 
though I must admit it is a bit 
crude. 

A more sophisticated method 
of inputting and outputting data 
is to use a combination of 
CHIP-8 language with machine- 
language subroutines. The 


CHIP-8 language combined with 
the display patterns stored in 
the 512 byte ROM do a nice job 
of displaying numbers on the 
screen. The programs in List- 
ings 3 and 4 (the CHIP-8 and 
machine language, respectively) 
show the two languages com- 
bined. These programs use 
CHIP-8 for input and output, 
with machine-language shift 
and addition subroutines. 

The main purpose of these 
programs is to demonstrate the 
technique of interfacing CHIP-8 
to machine language when 
there is a desired function that 
cannot be programmed in 
CHIP-8 alone. It is also useful if 
you are new at working the hexa- 
decimal. 

Try keying in some hex num- 
bers and observe how hex addi- 
tion works. The addition routine 
is an adaption of the routine 
published in Kilobaud Micro- 
computing, March 1979 (“Pro- 
gramming the 1802,” p. 122). 
That article was written with the 
Elf-2 in mind. These programs 
show how Elf-2 programs can be 
adapted to the VIP. The program 
in Listing 3 works as follows: 

Step 1— Initialize variables. 

Step 2— Accept four bytes 
from the keyboard and store in 
memory locations 300,301,302, 
303. 

Step 3— Load memory bytes 
300,301,302 in variables 0,1 and 


Variable Allocation 

V 0 Most significant data buffer and keyboard entry 

V 1 Least significant data buffer and keyboard entry 

V 2 Carry position data buffer 

V 3 Keyboard character for compare 

V 4 Counter for keyboard entry 

V 5 X display position (horizontal) 

V 6 Y display position (vertical) 

V 7 Counter for repeat of display routine 

Memory Allocation 

0300 Operand 1 high order byte 

0301 Operand 1 low order byte 

0302 Operand 2 high order byte 

0303 Operand 2 low order byte 

0304 Carry byte 

0302 Answer high order byte 

0303 Answer low order byte 

Note: The answer is overlayed into memory locations 0302 and 
0303 after operand 1 and 2 have been displayed. 

Table 1. 


194 Microcomputing, October 1980 



2 . 

Step 4— Set display position. 
Display variable 0 twice— first 
the least significant digit, then 
the most significant digit. 

Step 5— Set display position. 
Display variable 1 twice— first 
the least significant digit, then 
the most significant digit. 

Step 6— Decision step. First, 


SET I TO 
OPERAND 
2 MEMORY 
LOCATION - 
SET SCREEN 
LOCATION 


second or third time at this 
point. 1st— Have just displayed 
operand 1, branch to step 9. 
2nd — Have just displayed 
operand 2, branch to step 10. 
3rd— Have just displayed an- 
swer, go to step 7. 

Step 7— Set display position. 
Display variable 2 (contains car- 
ry indication— 00 or 01). 


MACHINE LANGUAGE 


INITIALIZE 

VARIABLES 


ACCEPT 1st 
DIGIT FROM 
KEYBOARD 
PUT IN VO 


ACCEPT 2nd 
DIGIT FROM 
KEYBOARD 
PUT IN VI 


OR LEFT AND 
RIGHT HALF 
(VO AND VI) 
TOGETHER 



LOAD VO. VI 
ANO V2 FROM 
MEMORY AT 
I LOCATION 

• STEP 3 

1 

1 

1 

1 

EQUIPMENT 


in 

in 

SET SCREEN 
LOCATION - 


1 

1 

1 

1 

1 

& SOFTWARE 

§]Erij 

mm 



SET SCREEN 
LOCATION - 
DISPLAY RIGHT 
HALF OF VO 


SET SCREEN 
LOCATION - 
DISPLAY RIGHT 
HALF OF VI 


SET SCREEN 
LOCATION - 
DISPLAY RIGHT 
HALF OF VI 



SET I TO 
ANSWER 
MEMORY 
LOCATION - 
SET SCREEN 
LOCATION 


1st. 2nd. OR 3rd, 
TIME HERE ? I 


i r 

! KEY PRESSED ! 

' - OF 7 i 



SET SCREEN 
LOCATION -DISP 
RIGHT HALF OF 
V2 (CARRY) 



1 



s'' 

[YES 


GET VO MEMORY 
LOCATION - 
SHIFT TO LEFT 
HALF OF BYTE 


PUT BACK IN VO 


Step 8— Check for keyboard 
= 0F. If key = OF, wait until it is 
released. Erase screen. Go to 
step 1. 

Step 9— Set display position 
and I to display operand 2. 
Branch to second part of step 3. 

Step 10— Set display posi- 
tion. Branch to add subroutine. 
Set I to display answer. Branch 
to second part of step 3. 

Machine-Language Steps 

Step A— Get variable 0 stored 
at memory location 06F0. Shift 
left four times. Put back in 06F0 
location. 

Step B— Get variable 0 stored 
at memory location 06F0. Shift 
right four times. Put back in 
06F0 location. 

Step C— Get variable 1 stored 
in memory location 06F1. Shift 
right four times. Put back in 
06F1 location. 

Step D— Add subroutine. The 
program listing is fairly self-ex- 
planatory. For a more detailed 
explanation see “Programming 
the 1802.” This routine is an 


adaptation of a routine in that 
article. 

Step E— Check for carry 
(DF = 1). Store 01 for a carry 
indication at memory location 
0304. Store 00 for a no carry in- 
dication. 

Conclusion 

The program flowchart in Fig. 
2 and the memory and variable 
usage in Table 1 should allow 
you to follow along with the pro- 
gram. Some shifting is neces- 
sary when working with CHIP-8 
variables. The keyboard entry 
and display routines in CHIP-8 
will only input and output the 
least significant half of the byte. 
The method I used is to go to the 
memory location the variable is 
stored in and manipulate it so 
the least significant half of the 
byte has the correct data in it. 
The CHIP-8 program doesn’t 
know the difference. 

Well, there you have it. I hope 
some of these ideas and tech- 
niques will be useful for other 
COSMAC VIP owners. ■ 


GET VO MEMORY 
LOCATION-SHIFT 
LEFT HALF OF 
BYTE TO RT 1/2 


PUT BACK IN VO 


GET VI MEMORY 


BYTE TO RT, 1/2 


PUT BACK IN VI 


ADD OPERANDS 
I a 2. STORE 
ANS. 8 CARRY 
IN MEMORY. 


Fig . 2. 


COMPUTER 


= COmPUTBR SHORPBR 


EVERY MONTH 

BUY, SELL OR TRADE ALL TYPES OF COMPUTER 
EQUIPMENT AND SOFTWARE (pre-owned and 
new) among 20,000 readers nationwide. 
FEATURES: 

• Low classified ad rates - 10$ a word 

• Hundreds of ads from individuals 

• Categorized ads so you can find them instantly 

• Large (11 by 14”) easy to read pages 

Subscribe now for $10 and receive 13 issues/year 
(one FREE plus 12 regular issues). After receiving 
your first issue if you’re not completely satisfied 
you may have a 100% refund and you still keep the 
first issue free. Bank cards accepted. 

BONUS: If you have something to advertise (pre- 
owned or software) send in a classified ad with your 
subscription and well run it FREE. ^ 36 

(p The Nationwide Marketplace for Computer Equipment 

m camPUTBR shorrbr 

^ P.O. BOX F 21 • TITUSVILLE, FL 32780 • 305-269-3211 

MasterCharge orVISA orders only, call TOLL FREE 600-327-9920. 


Reader Service index— page 241 


Microcomputing, October 1980 195 


Poor Man’s Logic Analyzer 


Troubleshooting needn’t be a rich man’s sport. 


Scott B. Eckert 

113 Roxboro Circle , Apt. 6 

Syracuse, NY 13211 


W hen I had completed 
enough of my home-brew 
computer system to warrant 
power on, I was sadly dis- 
appointed. It didn’t work! My 
home-brew design is based on 
the 6502 microprocessor and 
the 6530-004 multipurpose chip. 
One of the 6530-004’s purposes 
is to provide a IK ROM monitor 
program called TIM (Terminal 
Interface Monitor). Since it also 
provides a serial I/O port, I had 
no front panel controls except 
for power and reset. Well, I tried 
reset and got no response— so I 
was in trouble. 

Background 

Let me explain how TIM com- 
municates with the outside 
world. When reset is pushed, the 
6502 processor wants to go to 
locations FFFC/FFFD to get the 


two bytes present there. It then 
interprets these two bytes as a 
sixteen bit address to which to 
go and begin executing code as 
part of the reset initialization 
program for the particular sys- 
tem in which it is used. 

However, logic on my 
6530-004 board detects this 
reset and FFFC/FFFD condition 
and makes the processor fetch 
the bytes from 73FC/73FD in- 
stead. These two bytes are in 
the end of the ROM (TIM is re- 
quired to reside in locations 
7000-73FF) and point to the 
reset routine that is in the lower 
part of the ROM. 

This reset program does the 
housekeeping chores required 
for proper system operation, i.e., 
it initializes the I/O port, ini- 
tializes the interrupt vectors, 
sets up the stack pointer, etc. In 
addition, this routine waits for a 
carriage return from the key- 
board and determines the baud 
rate at which the serial data is 
being transmitted. 

Anytime you wish to change 


baud rates, you simply press re- 
set and hit a carriage return. The 
routine stores this baud rate 
constant for use whenever an 
output routine is called. After all 
this and more, TIM is nice 
enough to print all the register 
contents and wait for a com- 
mand (when it is working proper- 
ly). 

The Problem 

I knew the processor was do- 
ing something in ROM because 
the chip-select line on the chip 
was being enabled, but I had no 
idea what the processor was do- 
ing or where it was in ROM. 
From the address lines, I could 
determine that it was looping 
somewhere in the ROM. I had a 
listing of the TIM program, but 
that didn’t help me at this stage 
of the game. It is difficult to de- 
cipher sixteen address lines 
simultaneously with a single 
trace, “trigger-sometimes” 
scope. Worse, I had to know if 
the correct data was being sent 
down the data bus from the 
ROM itself. 

Well, I wished at that point 
that I knew somebody with one 
of those fancy logic 
analyzers. . . you know, the ones 
that cost hundreds to thou- 
sands of dollars! I then decided 
to build the poor man’s logic 
analyzer — something that 
would allow me to specify the 
address that I want it to, grab 
the data off the data bus and 
display it to me out in the real 


world. As you will see shortly, 
this turns out to be a fairly easy 
task, really nothing more than a 
souped-up parallel I/O port! 

The Circuit Details 

The DIP switches set the ad- 
dress desired to be the trigger 
address. Each group of four 
switches goes to the input of 
one of the 74LS85 4-bit 
magnitude comparators. The 
address line corresponding to 
each switch is also tied to the 
proper input on the 74LS85. 
When the proper address is on 
the address bus (the address 
that matches that set into the 
DIP switches), the A = B output 
of each comparator drives the 
cascading A = B input of the fol- 
lowing comparator. If all are 
enabled, the output from U4-6 
will enable the 3 input NAND 
gate U6-2. 

If the arm switch has been 
pressed and flip-flop U5 is set, 
the rising edge of the 02 clock 
pulse will cause the output of 
U6A-12 to go low until one of the 
inputs to it goes low again. 
Since the address in a 6502 
system is valid shortly after 01, 
the level on U6-2 is high well be- 
fore 02 comes along (see Fig. 1). 

When 02 goes high, the neg- 
ative-going signal from U6A-12 
is inverted again by U6B and 
used to enable the 7475 quad- 
latches. I he negative-going 
edge at pin 12 of U6A also trig- 
gers U10, a one-shot multi- 
vibrator with approximately a 1 



Tods - ADORESS SETUP TIME 
Tmds - DATA SETUP TIME 
Th - DATA HOLD TIME 
Tcyc - CYCLE TIME 


Fig. 1. Clock signals and various important times on a 6502 micro- 
processor. 


196 Microcomputing, October 1980 


second pulse width. This drives 
an LED to show that the circuit 
has been triggered by the occur- 
rence of the address set into the 
switches. 

When 02 returns low again, 
pin 12 of U6A goes high. This 
positive-going edge toggles flip- 
flop U5, if the analyzer is in the 
single-shot mode, or does not 
toggle it if in the continuous 
mode of operation. In the single- 
shot mode, the circuit is locked 
out from further triggers until 
the arm switch is momentarily 
moved to the continuous posi- 
tion in order to set the flip-flop. 
When set to the continuous 
mode, it can be used as a stan- 
dard latched parallel I/O port 
with LEDs, but it can also be 
easily moved to any address in 
memory. 

Some Timing Details 

I think a word is in order here 
regarding the timing consid- 
erations of this circuit to help 
adapt this circuit to non-6502 
systems. First, the address 
becomes valid about 200 nsec 
after 01 goes high. The data bus 
is floated during this period on a 
6502, so there is nothing on the 
data bus to grab yet. 

Data becomes valid approx- 
imately 150-200 nsec after 02 
goes high for a write cycle and 
must be valid for a minimum of 
100 nsec before 02 goes low for 
a read cycle. These times are 
given for a 1 MHz clock, each 
phase being about 500 nsec. 
This allows plenty of time for the 
data to be at the 7475’s inputs 
and meet the data set-up time of 
20 nsec. (Data set-up time is 
defined as the time required for 
the data to be present at the in- 
put terminals before trying to 
latch it in.) 

When the 02 clock goes low, 
this is the most critical part of 
the whole operation. The data 
from a 6502 is valid for approx- 
imately 10-30 nsec after the 02 
clock phase goes low. With the 
two gate delays from the 74LS10 
totaling 20-30 nsec, it appears 
questionable whether the circuit 
will work. However, the typical 
delay of a 74LS10 is about 10 
nsec, and the typical valid data 
time is 30 nsec, so every 74LS10 
that I tried worked perfectly. 

I suppose this stems partly 


from the fact that most devices 
are rated conservatively, and, of 
course, assuming you don’t buy 
junk. You could always go to a 
74H10 version of the gate, which 
has only a 6 nsec typical gate 



Fig. 3. Integrated circuit and 
LED layout . Resistors were 
placed on end between 1C 
packages to conserve space. 


Part 

Qty. 

Price ea. 

Total 

Radio Shack Board 
#276-154 

1 

$3.50 

$3.50 

74LS85 

4 

1.00 

4.00 

7474 

1 

.35 

.35 

7475 

2 

.50 

1.00 

74LS10 

1 

.25 

.25 

74121 

1 

.35 

.35 

7805 

1 

1.25 

1.25 

8-pos DIP switch 

2 

2.25 

4.50 

LED 

10 

.20 

2.00 

10k Resistor Vi W 

17 

.05 

.85 

Ik Resistor Vi W 

10 

.05 

.50 

100 uF 16 V Elect 

1 

.20 

.20 

Switch, Toggle SPST 

1 

2.00 

2.00 

.01 Disk caps 

A 

.05 

.20 

$20.95 


Table 1. Parts list. The entire circuit was constructed on a Radio 
Shack experimenter board with the standard 44-pin edge connec- 
tor. The total price can be reduced if you have a well-stocked junk 
box. 


A0 □> 

Al C>- 

A2 O— - 

A3 O- 



13 

La^-O 

12 

tvw-O 

10 



Vcc 

GNO 

74LS85 

16 

8 

7475 

5 

12 

74LSI0 

14 

7 

7474 

14 

7 

74121 

14 

7 



AI2 O 


02 O 


SINGLE 
SHOT 

ARM \ 
CLOSED 
FOR 
CONT 


Fig. 2. Logic diagram of the poor man's logic analyzer. 


Microcomputing , October 1980 197 




THE BEST IN SOFTWARE FROM COMPLEAT SYSTEMS 


NON PROFIT/SERVICE INDUSTRY ACCOUNTING 

For TRS-80 and CPM. In use over 2 yrs. A partner of a big 
8 acct firm said . . the best accounting program I have 
seen . . . does in a few pages what is frequently not 
done in 50 . . Unique features include: 

— Twice as fast as other systems 

— Common sense accounting— no debits or credits 

— Budgets, prior year, and year-to-date 
-Current status available at all times 
-8 separate Funds or Co’s allowed 
-over 2000 accounts allowed 
-standard 8 V 2 x 11 output 

— one year free update service 

Min. system 2 disk, 32K TRS-80 or 1 disk, 48K Z-80 CP/M 
$695/$35 manual. Complete systems also available. 
Payroll avail. Aug. 80: A/R, A/P, 8080 ver. avail, soon. 


SECURITY FOR TRS-80 AND CPM 

The best security system available. Automatically en- 
codes/decodes all data to/from disk. A billion billion 
(10 18 ) combinations. Typical uses include: proprietary, 
sales, financial, tax, or confidential client information; 
and time sharing/multi user systems such as Source, 
Micronet, etc. 

$49.95 Min. systems 1 disk, 16K, TRS-80 or 24K CP/M. 


$500 FREE to first to decode our sample message. 



COMPLEAT SYSTEMS 9551 Casaba Ave. Chatsworth, CA 91311 213-993-1479 

^ g4 Master Charge and VISA accepted. CA residents add 6% tax. 

TRS-80 and CPM are registered trademarks of Tandy Corp and Digital Research 


delay. I did not try one, but that 
would probably guarantee suc- 
cess (if that’s possible), al- 
though I doubt you’ll have any 
trouble with the circuit as 
shown. 

For My Next Project 

As far as enhancements to 
the current design, I believe you 
could build a similar circuit that 
would provide for, say, 16 con- 
secutive addresses once the 
trigger address is recognized 
and store them in a couple of 
7489s, which are 16x4 RAMs. 
Also, if you wanted to spend the 
money, you could buy those 
hexadecimal displays with the 
latch and decoding all in one 
package. These would make for 
a nice display, but would in- 
crease the cost of the project 
significantly. 

Did I Get My System Running? 

If you are wondering whether 
or not I got my system running 
with the help of this analyzer, 
the answer is yes! I set the ad- 
dress trigger to an address in 


the section of the monitor that 
was supposed to run each time 
a reset was pressed. I checked 
that the program actually 
passed through that point, as 
well as if the data from the ROM 
was correct. 

I continued this until I found 
the problem area to be the baud 
rate measuring routine. I 
checked the baud rate generator 
board I had built and found it 
was putting out a 1200 baud rate 
even though I had it set for 600 
baud. This was evidently too 
high for the TIM program to 
properly read. I corrected the 
problem on the baud rate board, 
set it to 600 baud, pressed reset, 
and it printed all my register 
contents and sat waiting for my 
command. 

I can attribute my success to 
my poor man’s logic analyzer. 
I’m sure I would have found the 
problem eventually, but I’m also 
sure it saved me a lot of valuable 
time. . . much better spent try- 
ing to devise ways to improve 
my system, not merely getting it 
to work!B 


Desk Main/Frame 


Desk Main/Frame 

LOW COST & ATTRACTIVE STYLING 

• MAIN/FRAME INTEGRATED INTO FURNITURE QUALITY DESK 

• ELECTRONICS PACKAGE SLIDE MOUNTED FOR EASY ACCESS 

• SUPPORTS TWO 8” FLOPPY DRIVES FROM SEVERAL MANUFAC- 
TURERS (DRIVES NOT INCLUDED) 

• 10 SLOT MOTHERBOARD INCLUDES CONNECTORS 

• POWER SUPPLY FOR DRIVES AND CARDS 

• DESK AND MAIN/FRAME AVAILABLE SEPARATELY 

• MATCHING PRINTER DESK AVAILABLE 



WRITE OR CALL FOR OUR BROCHURE WHICH INCLUDES 
OUR APPLICATION NOTE: BUILDING CHEAP COMPUTERS’ 

INTEGRAND 

8474 Ave. 296 • Visalia, CA 93277 • (209) 733-9288 
We accept BankAmericard/Visa and MasterCharge 




We have discounts, manufacturer's war- 
ranties, FREE shipping and insurance and a 


TOLL FREE ORDER NUMBER available. 

CALL US! 

Pan American Electronics 

Incorporated 

a Radio /hack 

AUTHORIZED SALES CENTER * 

1 1 17 Conway, Mission, Texas 78572 
TOLL FREE ORDER NUMBER 800/531-7466 
Texas & Principal Number 512/581-2765 ^ 71 



198 Microcomputing, October 1980 





Now... 

Intelligence beyond your CRT 



Xymec's HY-Q 1000™ Series brings 
microprocessor capability to print- 
ing. This fast, letter quality, intel- 
ligent printer/typewriter expands 
the capability of your computer 
or word processing system. 

Xymec gives your system more 
of the features you want most: 

• L.E.D. display 

• tractor feed 

• RS232, IEEE-C779 interface 


Compatible with nearly all micro- 
computers, the HY-Q 1000™ Series 
prints boldface and llfefflrffcfel . centers 
titles, sets columns and right jus- 
tifies. Your choice of three pitches 
and proportional spacing, with 
minimum throughput print speed 
of 20 cps. Changing print wheels 
or type styles takes but seconds. 


/ 

Intelligent printing makes 
j good sense to me: Send 
j me more information 
and the name of my 
: local dealer. 

2 Name 

j Title 

I Company 

| Address 

| City 

j State Zip 

| Telephone 

Xymec, Inc. 

17905 Sky Park Circle, Suite J 
Irvine, CA 92714 

v y 



The Value Standard in Printers 



Xymec gives you more features 
than any other machine on the 
market, regardless of price! 

Xymec intelligent printers won't 
create a service nightmare. Reliably 
constructed, the HY-Q 1000™ 

Series is built with serviceability in 
mind. And with service centers 
nationwide, maintenance is easy 
and convenient. 

Give your computer system the 
intelligent edge. Join up with 
Xymec. For more information, send 
in this coupon today. 


Xymec, Inc. 

Subsidiary of Litronic Industries 
17905 Sky Park Circle, Suite J 
Irvine, CA 92714 (714) 557-8501 





Client Write-Up System* 


The Client Write-Up System allows for the quick preparation of finan- 
cial records (General Ledger, Balance sheet, Income Statement) for a 
client. 

One time entry of general ledger and payroll accumulation by 
employee. 

Calculates and accrues employer taxes for Social Security, Federal 
and State U/C taxes. User furnishes the taxable wages and rates and 
the computer sets up the liability and expense. 

Allows up to ten repetitive entries for depreciation and amortization of 
prepaid expenses, which are entered into the Client Master File and 
automatically updated monthly. 

General ledger account and employee names are displayed when 
keyed by the user. 

Can consolidate individual master files into one profit and loss state- 
ment, and one balance sheet. 

All constants such as tax rates, taxable wages, etc. are user furnished 
in the Client Master file. 

Reports 

Trial Balance Comparative VS and B/S 

General Ledger 941, W-2 

Income Statement $1500.00 

Balance Sheet 


Time Analysis System* 

Accurate accounting of the billing of time and services rendered is the 
goal of the Time Analysis System (TAS). 

Activity file can be custom tailored by the organization to fit individual 
business applications. 

Employee time is categorized into different activities. 

Activities are entered into the client file and reflect the activity per- 
formed, and the time spent by the employee. 

Rates are assigned to each employee and are used to bill the employ- 
ee's time. 

Rate and activity amounts to be billed are computed and maintained 
as a Work-In-Progress amount. 

All or part of the Work-In-Progress amount is transferred into an 
accounts receivable amount at the end of the month. 

Statements are printed reflecting the accounts receivable amount 
owed by the clients. 

Reports 

Activity File Client Activity Ledger 

Employee File Statements 

Employee Activity Report $200. 00 

Client File 


Asset Depreciation System* 

The goal of the Asset Depreciation System (ADS) is to keep accurate 
records of a client's assets and subsequent depreciations. 

Depreciation of a given asset is computed by one of five standard 
methods: Straight Line, Sum-of-the- Year 's-Di gits, Double Declining 
Balance, 1.50 Declining Balance, and 1.25 Declining Balance. 

Dates used with the purchase of the asset are rounded to the nearest 
month start. 

An asset, at the end of useful life, is terminated by one of four methods 
of disposal. 

ADS houses a general ledger chart of accounts so that the accoun- 
tant's own general ledger may be easily cross-referenced with the 
ADS. 

The asset cost and accumulated depreciations are grouped by the 
ADS general ledger. 

Reports 

Fixed Asset Ledger COA listing 

Asset Depreciation Equipment File Listing 

Schedule $200.00 


* Hardware Requirements 

MOD Ew/ 64K RAM 
132 Column Line Printer 


or 

MOD I w/ 32K RAM 
3 5V4" Disk Drives 


HMPT The C<> m Pl®te ^ 33 

illvIU I Computer Company 

Houston Micro-Computer Technologies, Inc. 

5313 Biseonnot BoUajro, Toxae 77401 713/661 2206 



Have computer, will travel. 

Executive Computer System Carrying Cases. 

• Makes your microcomputer truly portable. 

• Protects your equipment: locking latches limit access. 

• Rugged black vinyl with metal corners outside. 

• Protective foam rubber, black velveteen covered, inside. 

• Computer can be operated without removing from case. 

• And cases are custom designed for full systems. 


Apple* Executive Case holds: 

• Apple microcomputer. 

• 9" Sanyo monitor. 

• 2 disk drives. 

• Power strip. 

• 2 boxes diskettes. 

• Manuals. 

• Dimensions: 28" x 21 "x lOVz ." 

• Weight: 17 pounds. 

• Price: $179 


TRS-80** Executive Case holds: 

• TRS-80 Microcomputer. 

• Expansion interface. 

• 2 disk drives. 

• Power strip. 

• 2 boxes diskettes. 

• Manuals. 

• Dimensions: 28"x 21V& "x 8Vz ." 

• Weight: 17 pounds. 

• Price: $179 


Tferms: FOB Los Angeles — Master Charge, Visa or check 
with order. Allow 3-4 weeks for delivery. 

‘Registered, Apple Computers, Inc. 

“Registered TVademark, Tandy Corporation. 


COMPUTER TEXT lie 

10960 Wilshire Blvd, Suite 1504 

Los Angeles, CA 90024 (213) 477-2196 


“TRS-80 is a registered trademark of TANDY CORP.’ 


Call about our fantastic price on 
4-drive complete system. 

Level II 4K $557.10 

Level II 1 6K $720.00 

Expansion Interface $269.00 . 

Expansion Interface 1 6K $403.20 

Expansion Interface 32K $524.00 

16K Memory Kit for TRS-80 or Apple 

$79.95 

TRS-80 & NORTH STAR ADD-ON DRIVES 



CUSTOM 

ENCLOSURE 



CABLE 

INCLUDED 


Single drive system in custom enclosure $400.00 

Single drive system in metoi enclosure $075.00 

Double drive system in custom enclosure $806.00 

MPI $275.00 

MPI, D52, duol heoded $049.00 

Shugort SA400 $275.00 

Shugort SA800 $479.00 

Tondom single sided $279.00 

Tondom double sided $425.00 

Hazeltine 1000 $450.00 

Single tier walnut enclosure for Shugart $ 05.00 

Double tier walnut enclosure for Shugort $ 52 .00 

Atari 400 $548.49 

Atari 800 $795.00 

Hazeltine 1410 $749.00 

Centronics PI Printer (TRS-80 add on) $098.95 

Centronics 779-2 tractor (TRS-80 odd on) $ 1049.95 

Tl Printer $1599.00 

Dose 2 $649.00 

Horizon 1. 02K $2290.00 

Televideo 912 $775.00 

SPECIAL! MINI FLOPPY DISKS, box of 10 (with plastic box) only 
$28.00 (without plastic box) only $26.50. Box of 10. 8” disks (in plastic 
box $30.00). Centronic 779 ribbons $3.50 each. 


Wt ACCEPT BANK AMSAKAAO, VISA. MASTIA CHAAOE 

29-02 23rd Ave., Astoria, N.Y. 11105 
TWX 7105822107 (212) 728-5252 
(800) 221-1340 


200 Microcomputing, October 1980 




WORDPRO 3 USERS 

Save Time — Personalize Letters 

Announcing a USABLE MAIL LIST PROGRAM 
which lets you make multiple copies of the same 
letter yet address it to different customers. 
Designed to interact with Commodore’s new 
Wordpro 3 or 4, this program creates the files for 
variable text eliminating the necessity to run the 
letter through twice to give it that personalized 
effect. For the 40 or 80 column PET, random or 
relative files— please specify which. 

Can pay for itself with one use at a minimum in- 
vestment of $100.00. 

For further details contact: 


Microcomputer — 


Industries, Ltd. 

1520 E. Mulberry, Suite 240 
Fort Collins, Co. 80524 ( 303 ) 221-1955 



★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ 


SURPLUS 

"SELECTRIC" SPECIAL! 


"SELECTRIC" TYPEWRITER TERMINAL 


Just imagine; an IBM Mode! 725 "SELECTRIC" typewriter built into 
a complete table-top RS-232 terminal! These surplus terminals were 
formerly on lease and appear to be in good condition (we test ’em to 
make sure the printer is functional) These fantastic BCD-Coded 



terminals feature: 


• 15” CARRIAGE 

• 725 SELECTRIC’ 

• RS-232 I/O 

• 132 COLUMNS 

• Sim. to IBM 2741 
•Std. Typewriter Kbd. 

• MAX: 15 CPS RATE 


• 134.5 BAUD I/O 
•88 Character Set 
•6 Bit BCD CODE 
•Attractive Case 
•Upper/Lower SHIFT 


• 10 Chars./lnch 

• Removeable Type Sphere 


ONLY 

* 469 ®° ! 


While we will check out each unit, we MUST offer these unique 
bargains “AS-IS": Meaning they may need some service but are 
basically operational. Add $20.00 for packing crate, you pay 
shipping on delivery. 


ALSO INCLUDES: Type ball, I/O circuit boards, power supply & some data. Sorry, no power 
cord included. 


-SPECIAL OFFER!!- 


Buy 2, take 20% Off the Full Price— 
You Pay Only 


2 for $750 0( > 


"SELECTRIC"* PRINTER MAINTAINANCE MANUAL 

JUST IN!! We now have available some excellent printer maintainance manuals. These are 

the most thorough manuals we’ve seen. Well worth the price! ONLY *25.00es 

* " SELECTRIC " is an IBM Trademark 



CFR 


Associates, Inc. 


MAIL ADDRESS: WAREHOUSE: 

P.0. Box 144 18 GRANITE STREET 

NEWTON. N.H. 03858 HAVERHILL. MASS. 01830 


( 617 ) 372-8536 

Phone Orders 
Are Welcome 


Dear Subscriber: 

Kilobaud Microcomputing does not keep the sub- 
scription records on the premises, therefore, calling 
the Peterborough offices doesn’t solve your sub- 
scription problem. 

To quickly solve your problem please send your 
most recent address label and a description of the 
problem to: 

Kilobaud Microcomputing 
Subscription Department 
PO Box 997 
Farmingdale, NY 11737 

Please allow the subscription department at least 
two weeks for an answer or a solution to your prob- 
lem. 


Thank you and enjoy your subscription. 


Sincerely, ^ 



Debra L. Boudrieau 


APPLE — JACK 


New! 


the graphics & games people 


Super Starbase Gunner 


$ 19.95 

DISK 



$ 19.95 

DISK 


314 


Most shoot-em-up target games are 2-D shoot across the screen type, 
and quite frankly there is a glut of inferior ones. A need for a new 
approach exists, such as fast 3-D HIRES simulations with clever and 
complex challenges. How about shooting into the screen, into 3-D 
space, where the target is mathematically many feet behind the screen 
surface? How about computer intelligent targets that shoot back and 
use strategy and learn? How about all this and the best attributes of 
thje more popular games? Let’s include high score, 10 levels of play, 
snappy sound effects, colorful explosions and real time graphics. 
Why not go all the way and have a three dimensional gunsight? A real 
space battle simulation . . . Nah ... no one would believe it or could 
even write it. Right? 

WRONG! I WE HAVE IT . and it is SUPER STARBASE GUNNER. We 
are very excited about this product because it is all the things we wish 
we had and didn’t. And you can have it now with this introductory 
offer. 


SUPER STARBASE GUNNER DISK...$19.95 48K with APPLESOFT ROM 


AVAILABLE FROM YOUR DEALER OR DIRECT FROM 


Circulation Manager 


APPLE — JACK, BOX 51, CHERRY VALLEY, MA 01611 
(INQUIRIES INVITED) 


tS Reader Service index— page 241 


Microcomputing , October 1980 201 





A Humanist’s Approach 
To Computer Programming 


You can tell a lot about a person by the programs he writes. 


Dick Lutz 

4802 Fifth Avenue 

Pittsburgh PA 15213 


I n some sense, the subtitle 
of this article might be “A 
Computerist’s Approach to 
Human Programming.” That is, 
the intention is to program you , 
the writer of computer programs 
for the use and enjoyment of 
yourself and others, so that 
what you preparb to run on your 
computer will also run effective- 
ly in your mind— and in mine 
should I have the occasion to 
read one of your programs (or 
worse, attempt to ddbug it). 

“What,” you may ask, “is the 
percentage in this idea?” Why 
should you write programs so 
that I can read them? Simply be- 
cause unless you’ve never writ- 
ten anything more complicated 
than a counting program, you’ve 
probably had the experience of 
trying to figure out what in the 
world you were trying to do in 
one section or another of one of 
your programs. Surely you’ve 
puzzled over somebody else’s 
poorly annotated program, won- 
dering what in the world he had 
in mind. 

Is this a plea for documen- 
tation? In part, yes. It’s time to 
start writing programs for peo- 
ple to read— not just machines. 
My reasoning is that if you write 
REMarks good enough to help 
you understand your program 
later, there’s at least a fighting 
chance that if I encounter it, I’ll 


eventually be able to untie the 
knot it’ll put in my feeble 
cranium. 

But there’s even more to it. As 
computerists, we’re on or near 
the leading edge of something 
that will become more and more 
widespread in our society— the 
use of electronic computers to 
lighten the load and enlighten 
life. That makes it particularly 
important that we computerists 
think like humanists in writing 
programs. . .simply because 
more and more people are going 
to be trying to read them. 

The exact approach is not 
important— only that there be a 
logical (humanly logical, please) 
consistency to what you’re do- 
ing, so that others can pick up 
and read your style. Rather than 
lecture about how to proceed, 
let me tell you how I go about it, 
and you can adapt my proce- 
dures to those you’ve already 
worked out for yourself. 

PRGMBASE 

I keep PRGMBASE handy. It’s 
reproduced here. I load it 
whenever I begin writing a pro- 
gram in Microsoft BASIC. It not 
only imposes form on what I 
write, but it also helps me as I 
write. 

Program Writing Utilities 

In lines 0-9, you’ll find some 
utility items specifically written 
for my hardware configuration. 
By typing RUN/cr, I call line 1 in- 
to action. It alternately expands 
or contracts my Imsai VIOC 
video output. This is convenient 


because on my fussbudget 
monitor, the 24 x 80 format oc- 
casionally leaves doubt as to 
whether I’m looking at 0, 8, 2 or 5, 
all of which can look alike at the 
screen’s edges. 

Line 3 toggles video in and 
out of the wraparound mode, so 
RUN 3/cr gives me scrolling 
whenever I need it. The 0-9 por- 
tion of PRGMBASE is selected 
for this duty because it simpli- 
fies repeated call-up while 
writing programs. These utilities 
could as well be in the 65000 
zone, except that it would take 
more typing (“RUN 65302/cr”) 
for each use. 

Of course, once a program is 
written and I have no further use 
for these utilities, I just DELETE 
0-10 before a final SAVE. But 
there’s more. 

Automatic Variable Index 

Ever lose track of a variable? 
It can be maddening to work for 
hours to debug a recalcitrant 
program, only to discover that 
you’ve used variable CH as both 
CHart and as CHange, and may- 
be even as CHoice. With three 
potentially overlapping assign- 
ments, your program is sure to 
stumble on a variable sooner or 
later. I’ve made this mistake so 
often that I now keep track of my 
variables as I go along, using 
the variables index built into 
lines 7000-9700 of PRGMBASE. 

It’s very easy, once you get 
used to it. A variety of methods 
are possible, but what works for 
me is to take a hard-copy listing 
of lines 7000-9700 as I begin. 


Then I can see at a glance that 
the K variables are indexed at 
8100, and that variable KS would 
be indexed at 8100 + 19, S being 
the 19th letter of the alphabet. 
Since I don’t remember that S is 
letter #19, line 8900 reminds me. 

When I’m about to use a new 
variable, I determine what its 
number would be in the in- 
dex— but before I write the index 
line for it, I LIST it. If it comes up 
blank, I know I’m in the clear. If 
not, I’ve saved myself some ex- 
cruciating debugging. And 
through the process of saving 
the variables in this index, I’ve 
helped myself and others to 
decipher what my program is 
supposed to be doing. 

If it’s carefully planned, the 
variable index itself can be used 
to initialize variables, set default 
values and to DIMension arrays 
(see lines 8717, 8726 for ex- 
amples). And as a final bonus, 
this simplifies the DEFINT pro- 
cess at the end of program 
writing, since a glance at a sec- 
tion will tell you immediately if 
all R (or S, or B) variables are in- 
tegers. 

Incidentally, you’ll notice in 
the index that LN is a reserved 
variable, which means LiNe 
(number). When I’m writing a 
program section that later might 
give me trouble— or if I’m fret- 
ting over one that is already giv- 
ing me fits — I just insert an extra 
line: LN = (current line number). 
Then I add the following line to 
my utilities in the 0-9 section: 

4 PRINT "BUGSPRAY NEEDED LINE”; LN; 
:RETURN 


202 Microcomputing, October 1980 


By inserting G0SUB4 where I 
suspect a program is running 
amok, I get a readout of where 
my problem may be. Again, 
there is a variety of approaches 
to this idea, and you can impose 
your own method to make it 
work best for you. 

Program Index 

PRGMBASE also provides a 
program index, which simplifies 
the work of somebody trying to 
figure out what the program is 
intended to do, as well as help- 
ing me organize myself while 
writing a program. So that I don’t 
spend a lot of time figuring out 
where to index a program sec- 
tion, there’s a simple formula in 
the program for deriving the in- 
dex location from the program 
line number, or vice versa: 

INDEX - (PROG RAM LIN E/1 00) + 10000 

or, in human terms, drop the last 
two digits from the program line 
number and add 10 to the left of 
what remains. Program line 
25500 becomes index location 
10255. In reverse, it’s just a mat- 
ter of dropping the 10 from the 
head of the index number and 
adding 00 at the end of the 
resuit. Thus, index location 
10025 refers to program line 
(0)2500. 

Program Structure 

In a further sense, the way I 
write programs in itself amounts 
to an index. That kind of pro- 
gram structuring is shown in 
PRGMBASE in lines 10860 and 
up. Once more, this is not just 
useful to the poor schlemiel who 
may have to figure out what I’ve 
written, but to me while I’m 
writing a program— particularly 
when I must leave it for a few 
days and want to return with 
some notion of what I was do- 
ing. 

I use four (sometimes five) 
routine levels: 

DEITY rarely, In lines 0-9 

REGAL in the 10 to 99 LNs 

EXECUTIVE in the 3-digit lines 

MANAGERIAL in the 4-digit lines 

WORKER in the 5-digit lines 

As a rule (but not without 


This program was written in Microsoft 
disk BASIC version 4.51; in the current 
versions, 5.0, a space is required be- 
tween GOSUB or GOTO and the line 
number. That is, GOSUB9980 is illegal; 
use GOSUB 9980 instead. 


Program 1. 


0 'later will jimp into program 

1 PRINT CHR$(27);CHR$(67); 

CHR$ (27 ) ; CHR$ (76 ) ; 

CHR$(26); : STOP' video size 

3 PRINT CHR$(27); CHR$(83)j: 

STOP' scroll/wraparound switch 
5 PRINT CHR$(26); ' clear screen 

9 STOP' backstops utilities 0-9 

10 • 

98 STOP’ final program stop 

99 • 

1000 ' 

6999 * 

7000 'VARIABLES INDEX 

7001 'Var 


9809 


8214 *LN 


8713 '0M 


8726 QZ=1 
8751 *01 


r ar 

TYPE 

function 

A. .01.. 



B. .02. . 



c. .03. . 

>..04 



D..04.. 

:..05 



E. .05. . 

•..06 



F..06.. 

;..07 


G..07.. 

I. .08 


H..08.. 



I. .09.. 



J..10.. 



K..11.. 



L. .12. . 

.N 

int 

LiNe number 



M..13.. 



N. . 14. . 

). . 15 


0..15.. 



P..16.. 



Q..17. . 

>M 

i 

Quote Manip' 

M 00(5,5)’ 

Oues array 

:=i' 

i 

1-on, 0=off 

>1 

.III 

var Quotient 



R. .18.. 



S. . 19. . 



T..20. . 



U. .21 . . 

r. .22 


V. .22. . 

f- -23 


W..23.. 



X. .24. . 

:..25 


Y. .25. . 





9697 RETURN 'from getting these values 

9699 ' 

9700 'LINE LLISTER UTILITY 

9702 PRINT CHR$(26)' clear screen 

9703 CC=32:LN=1:CL=3:G0SUB9980' 

With CC an ASCII blank (32), 
call 9980 (position A print) 
to place cursor at LN1, CL3, 
to display: 

9706 PRINT "NEXT > RUN \ to LList” 

9709 CL=10:LN=2:00SUB9980'pos to pnt: 

9710 PRINT "9770 ! Program Index" 

9711 LN=3:OOSUB9980 

9712 PRINT "9790 ! VARs Index" 

9713 LN =4 : GOSUB 9980 

9714 PRINT "9810 ! DEITY 0-9" 

9715 LNs5:OOSUB9980 

9716 PRINT "9830 ! RECAL 10-99” 

9717 LN =6: GOSUB 9980 

9718 PRINT "9850 ! EXECs 100-999” 

9719 LN =7: GOSUB 9980 

9720 PRINT "9870 ! MGRs 1000-6999” 

9721 LN =8: GOSUB 9980 

9722 PRINT "9890 ! subrs 10660-10999" 

9723 LN =9 : GOSUB 9980 

9724 PRINT ”9910 ! WRKRs 11000-" 

9725 LN =10: GOSUB 9980 

9726 PRINT "9930 ! this utility" 

9729 PRINT CHR$(30); :S70P’ 

Await run command 

9769 ' 

9770 'LList PROGRAM INDEX 
9772 LN =2 : CL= 1 : GOSUB 9980 » 

place cursor and 
9774 PRINT " LISTING:'" 

so that it covers the 
menu item being run 
9776 LN=3: GOSUB 9980 ' 

position cursor, 
mark place with: 

9778 PRINT "RUN NEXT> " 

9779 LN=2:CL=1:GOSUB9980 

9782 GOSUB 9990' skip 3 lines 

9783 LPRINT "PROGRAM INDEX LISTING" 

9784 LPRINT' skip 1 line 

9785 LN =2: GOSUB 9980’ 

repark the cursor to spot 
the "0k," on completion of 
LList, at the RUN NE)(r>. 

9786 LLIST 9999-10699 

9788 STOP 

9789 ' 

Remaining modules follow 
the same pattern as 
lines 9770-9788; see sub- 
routines at 9980, 9990. 

9790 'LIST VARIABLES INDEX 

9794 LN=3:CL=1:G0SUB9980 

9795 PRINT " LISTING:" 

9796 LN =4: GOSUB 9980 

9797 PRINT "RUN NEXT> " 

9798 LN =3: GOSUB 9980 

9802 GOSUB 9990 

9803 LPRINT "VARIABLES INDEX" 


9829 


9849 


LPRINT 



10505 becomes 50500 

LN =3: GOSUB 9980 

10005 

• 


LLIST 6999-9699 

10070 

• 7000 

VARIABLES listing 

STOP 



A =7100, B =7200, 




A1=7151, B1=7251, etc. 

'LIST DEITY LEVEL 

10100 

• 10000 

this INDEX 

LN =4 : CL= 1 : 00SUB9980 

10107 

• 10700+ 

suggested conventions 

PRINT " LISTING:" 

10699 

• 


LN =5: GOSUB 9980 

10700 

» 


PRINT "RUN NEXT> ” 

10709 

• 


LN =4: GOSUB 9980 

10730 

•SOME SUGGESTED CONVENTIONS 

GOSUB 9990 

10740 

• 


LPRINT "DEITY level” 

10750 

'Lnls 

generally 

LPRINT 


ending 

are used 

LN =4: GOSUB 9980 


in: 

for: 

LLIST 0-9 

10760 

• 0 

stock entries used with 

STOP 



PRGMBASE regularly 

' 

10761 

' 1 

draft 11 of a prgm 

•LIST REGAL LEVEL 



(w/ 20-line spacing 

LN=5:CL=1:O0SUB9980 



to allow additions) 

PRINT " LISTING:" 

10772 

• 2 

draft 12 

LN =6 : GOSUB 9980 



(using the alternate 

PRINT "RUN NEXT> " 



20-line spacing) 

LN =5: GOSUB 9980 

10783 

’ 3 

draft 13 (revisions) 

GOSUB 9990 

10794 

• 4 

draft 4 

LPRINT "REGAL LEVEL" 

10805 

’ 5 

draft 5 

LPRINT 

10816 

• 6 

draft 6 

LN =5: GOSUB 9980 



NOTE: As new 

LLIST 10-99 



drafts come in, the old 

STOP 



lines deleted are not 

' 



re-used 'til needed; 

'LIST EXECUTIVE LEVEL 



they are simply erased. 

LN=6:CL=1:G0SUB9980 

10827 

• 7 

RETURNS 

PRINT " LISTING:" 

10838 

' 8 

temporary checklines 

LN =7: GOSUB 9980 



A last ditch stuff; 

PRINT "RUN NEXT> " 



treat as "extra" 'til 

LN =6: GOSUB 9980 



desperately needed 

GOSUB 9990 

10849 

’ 9 

spacer lines 

LPRINT "EXECUTIVE LEVEL" 



between prgm sections, 

LPRINT 



like 10859 below. 

LN=6:OOSUB9980 

10859 




9867 LLIST 99-999 1086O 

9868 STOP 10870 

9869 ' 

9870 'LIST MANAGER LEVEL 

9872 LN=7:CL=1 : GOSUB 9980 
9874 PRINT " LISTING:" 

9876 LN =8: GOSUB 9980 

9878 PRINT "RUN NEXT> " 10875 

9879 LN=7:00SUB9980 
9882 GOSUB 9990 

9884 LPRINT "MANAGER LEVEL" 

9886 LPRINT :LN =7 :00SUB9980 

9887 LLIST 999-6999 10881 

9888 STOP 

9889 ' 10885 

9890 'LIST misc SUBRs in 10660-999 

9891 LN =8 : CL=1 : GOSUB 9980 ^ 

9893 PRINT " LISTING:" 

9895 LN =9: GOSUB 9980 10 891 

9897 PRINT "RUN NEXT> " 

9899 LN =8 : GOSUB 9980 
9903 GOSUB 9990 

9905 LPRINT "miscellaneous subrs" 

9906 LPRINT: LN=8:OOSUB9980 10g01 

9907 LLIST 10659-10999 

9908 STOP 

9909 ' 

9910 'LIST WORKER LEVEL 

9911 LN=9:CL=1:G0SUB9980 
9913 PRINT '• LISTING:" 

9915 LN =10: GOSUB 9980 10902 

9917 PRINT "RUN NEXT> " 

9919 LN=9:G0SUB9980 

9921 GOSUB 9990 

9923 LPRINT "WORKER LEVEL” 

9925 LPR INT : LN =9 : 00SUB9980 

9927 LLIST 10999- ’ to end 10904 

9928 STOP 10905 

9929 ' 

9930 'LIST THIS UTILITY 

9931 LN=10:CL=1 : GOSUB 9980 
9933 PRINT " LISTING:" 

9935 LN=1 : GOSUB 9980 

9936 GOSUB 9990 

9937 LPRINT "LineLLister utility" 

9938 LPRINT 

9941 LN =2: GOSUB 9980 
9943 LLIST 9699-9999 
9945 GOSUB 9990 

9979 ' 

9980 'POSITION CURSOR to PRINT 10906 

9982 PRINT CHR$(27); CHR$(61); 

CHR$(LN+31); CHR$(CL+31); 

CHR$(CC);' position cursor 

and print CC (a blank in this 
particular usage). 

9984 RETURN 

9989 ’ 

9990 'LSKIP 3 LINES subroutine 
9992 LPRINT: LPRINT: LPR INT 
9994 RETURN 

9999 ’ 

10000 ' MASTER PROGRAM INDEX 

to derive an index location for 
a program line, drop the last 2 
digits 4 add 10000 

10001 ’ INDEX 2000 at 10020, 

20000 at 10200, 

25500 at 10255 

10002 ' to turn an index number into a 

prgm line number, drop first 2 
digits 4 add 2 trailing zeroes 

10003 ’ 10255 becomes 25500, 

10021 becomes 02100, 10999 


•PRCM STRUCTURE conventions 
'Levels of operation: 

Deity 1-digit linels 

Regal 2-digit linels 

Executive 3-digit linels 

Managerial 4-digit linels 
Worker 5-digit linels 

'First digits always deal with 
like matters, gosubbing thru 
the levels making ever-finer 
decisions 'til some worker-lvl 
does actual processing. 

'Thus, branching follows this 
pattern, generally: 

• 20- 30 REGALS gosub to 

200- 300 EXECs which gosub 

2000- 3000 MANAG'L, to 
20000-30000 WORKERS , etc . 
•RETURNS always "backstitch the 
seam," so 20200-20297 RTNs 
to the 2021+ range. That could 
have a 2027 RTN to exec, or a 
2030 gosub to 20300. 

'Thus the following might be the 
flow of a typical program, 
with > 4 < indicating gosub 
and return directions. 

[Follow the arrows > right for 
gosubs, left < for returns, 
reading down. ) 

•The letters A-D indicate 
routine and subroutine levels: 

A = Regal 
B = Executive 
C = Managerial 
D = Worker 

• A B C D 

• 10 

20 > 200 > 2000 > 20000 

< 20297 
2030 > 20300 

< 20397 

2040 

2050 > 20500 

< 2077 < 20797 
210 > 2100 > 21000 

< 217 < 2197 < 21997 

22 > 220 

230 > 2300 

2400 > 24000 

<297 < 2997 < 29997 

30 

35* 

41 > 410 > 4100 

4200 > 42000 

< 42997 
4300 > 43000 

< 4397 < 43997 
440 

450 

460 > 4600 > 46000 

< 46997 

4700 

4800 > 48000 

10908 ' < 487 < 4897 < 48997 

50 

60* 

98 final program stop 


Microcomputing, October 1980 203 


exception), the lower-numbered 
lines are privileged to call the 
higher-numbered lines as sub- 
routines. This is why the 
7000-9700 line numbers were 
chosen as PRGMBASE’s vari- 
able indexing section — be- 
cause, simply, there are no 
worker-level line numbers to 
call, at 70000-99000, in most 
systems running BASIC. 

There are exceptions to the 
calling convention because a 
particular subroutine may be 
useful from more than one pro- 
gram level. This approach also 
means that I can use the first 
digit of any line number as a 
clue to its task. All line numbers 
beginning with 2, for example, 
might direct introductory re- 
marks to the user and offer 
choices to be made by him. 

In a top-down approach to 
programming, you’d write the 
DEITY level first, then the 
REGAL, and so on. Although it 
might violate the sensibilities of 
the hardbit top-down devotee, 
this method of program orga- 
nization allows you to write and 
place a tiny subroutine when a 
neatly turned approach occurs 
to you. . .and then to be sure it 


works even before writing the 
calling level. 

Fig. 1 shows how the calling 
convention works. It’s also 
shown in PRGMBASE lines 
10904 to 10908; if you adapt your 
own version of PRGMBASE, 
having this section in it will pro- 
vide a quickly available remind- 
er until this approach becomes 
second nature to you. 


LListing Made Easy 


A final bonus of this system 
of program writing is that stick- 
ing with the calling conventions 
means you can selectively pro- 
duce really useful hard-copy list- 
ings. In fact, PRGMBASE con- 
tains its own Utility LineLLister 
in lines 9700-9994. On RUN 


9700/cr it generates a video 
menu that looks like this: 


NEXT 


RUN 

to LList 

9770 

Program Index 

9790 

VARs Index 

9810 

DEITY 0-9 

9830 

REGAL 10-99 

9850 

EXECs 100-999 

9870 

MGRs 1000-6999 

9890 

subrs 10660-10999 

9910 

WRKRs 11000- 

9930 

this utility 


The utility then waits for com- 
mands with video keeping the 
place with its pointer, NEXT >, 


at the next line to run for a top- 
down listing. Of course, I take 
the option of listing only what I 
need for a given process. Using 
this programming method, that 
almost always means from one 
level, say MGRs, through the 
levels it calls. Also, since lines 
400-499 will usually call only 
sections in the 4000-4999 (and, 
in turn, 40000-49999) portion, I 
save myself much confusion in 
figuring out what to list and 
what to debug. . .and I cut down 
the paper I have to haul around, 
too. 

Objections 

As you might suspect, I’ve 
discussed this approach to pro- 
gramming with others who 
spend hours looking at video 
monitors and poking away at 
keyboards. Some voice an ob- 
jection that memory is costly, 
and they don’t have any to 
spare. My response is that it’s 
getting cheaper, but even now 
they can use the methods at the 
start of programming, later 
deleting excess parts or saving 
one complete annotated copy of 
the program and “stripping” 
another for space consider- 


ations. Furthermore, I maintain 
that PRGMBASE can save mem- 
ory by imposing code-saving 
outline methods on program- 
mers. 

But the most frequent objec- 
tion surprises me: “But then I 
can’t use RENUMber to bail me 
out when I run out of line 
numbers!” Well, yes and no. 
You can often RENUMber pro- 
gram lines within the strictures 
of this approach to program 
writing. Unfortunately, if you 
have to do an extensive renum- 
bering job on a program, the pro- 
gram index will be nearly 
useless afterward. But if you 
think about your programming 
in a way that will help it all make 
sense to a (human) program 
reader later on, you probably will 
not need the RENUMber option 
very often. 

It’s worth the thought, and the 
time. It is aesthetic to write neat 
programs for your personal 
computer which, if appreciated 
and observed, can lift your inter- 
action with the machine to a 
new level of elegance. Try it! It’ll 
make your machine just a little 
more human— not to mention 
what it’ll do for you! ■ 


LEVEL: 

LINES: 


A 

REGAL 

10-99 


EXECUTIVE 

100-999 


C 

MANAGER 

1000-9999 


D 

WORKER 
10000 + 


IOOO- 
10650 = 
INDEX 


Note thot the more authority 
a level has, the less likely it is 
to "report bock" to o higher 
authority before passing control 
to another section ot the same 
level. 



No GOSUB out of 220 effectively 
reserves 2200-2299 and 22000-22999 
for later implementation. 


|^2400^J «|^24000^J 

1 297 |«- - .| 2997~~j* 1 29997 | 

TO 30 



Line numbers ending in 0 represent 
a range starting at that number. 
They GOSUB to a range represented 
by adding one zero. 

By convention , line numbersending 
in 7 are RETURNS 




4- 

*0 


450 



Some EXECUTIVES never get MANAGERS 
under them, some MANAGERS, no WORKERS 
In o top-down approach, the option always 
remoins to odd staff. Under these conventions, 
staff line numbers are reserved automatically 
when on EXECUTIVE or MANAGER level 
"department" is created. 



50 



7000- 

9999. 


VARIABLE 

INDEX 

and 

Line LLister 


Fig. 1. Calling convention. 


204 Microcomputing, October 1980 


ZIP UP TO 
7 SPEEDS! 

NOW YOU CAN RUN YOUR TRS-80 RELIABLY 100% TO 125% FASTER (4 
MHZ)! Our NEW speedup board enables programs to run 50% slower than 
normal, normal, and 50%, 70%, 90%, 100%, or 125% faster. A 50% mini- 
mum increase is guaranteed (90% to 100% typical); however, DETAILED IN- 
STRUCTIONS SHOW CHANGES REQUIRED TO THE TRS-80 THAT WILL 
INSURE RELIABLE OPERATION AT THE 100% OR 125% INCREASE! 
Software speed control with switch override option allows speed changes 
AT ANY TIME without program interruption. Our board also compensates 
for slow memory ! Automatic slow down possible during cassette or disk 
operation (not required for TRSDOS, NEWDOS, and VTOS 4.0!). Power 
LED changes color (red • yellow - green) to indicate normal, slow, and 
high speed operation. 

ASSEMBLED AND TESTED $37.50 



VIDEO I. Provides black characters and graphics on an all white screen for 
a much crisper and easier to read presentation - gives none of the glare 
associated with plastic screen add-ons. Includes a unit to improve monitor 
performance. 


ASSEMBLED $23.95 



Calif, residents add 6% tax. Foreign orders add 10%. Printers shipped 
freight collect. 


ARCHBOLD ELECTRONICS 


10708 Segovia Way Rancho Cordova, CA 95670 

(916) 635-5408 

Dealer inquiries invited ■■■■ 


/ TOLL FREE ORDERING 



NORTHSTAR 

HRZ 1-32K-D 2100 

HRZ2-32K-D 2340 

HRZ 2-32 K-0 2690 

HARD DISC SYSTEM 3950 

DYNA BYTE 

DB8/1 4 8K 2395 

DB8/2 4 8K 3900 

DB 8/4 3030 

32 M PHOENIX 11800 

TERMINALS 

TELEVIDEO 912 745 

TELEVIDEO 920 795 

SOROC IQ-120 700 

PRINTERS 

NEC 5510 2700 

NEC 5520 2975 

TI-820 1650 

ANADEX 795 

BASE 2 600 

EPSON CALL 


THINKER TOYS 

DISCUS 2 + 21 DRIVE 1265 

DISCUS 2D 1 DRIVE 970 

DISCUS M26 HARD DISC . . . 4095 

SOLID STATE MUSIC Kit Assm 
SB1 SYNTHESIZER ... 161 227 

VB1B VIDEO 125 170 

CB2 Z80 CPU 168 220 

MEASUREMENT SYSTEMS 

DM 3200 32K 250ns 500 

DM 6400 64K 250 ns 640 

DM B 3200 650 

SOFTWARE-DISCS-MISC 

CPM-2 150 

WORDSTAR 350 

GRAHAM-DORIAN CALL 

STRUCTURED SYSTEMS . .CALL 

VERBATIM 5 (10) 28 

VERBATIM 8 (10) 35 

ATARI CALL 

TI99-4 CALL 


WE WILL TRY TO BEAT ANY ADVERTISED PRICE 

Automated Equipment Inc. 

4341 W. Commonwealth Ave Suite D 
Fullerton, Calif. 92633 

(71 4) 739-4701 (800) 854-6003 


DISK DRIVE WOES? PRINTER INTERACTION? 
MEMORY LOSS? ERRATIC OPERATION? 


DON’T BLAME THE SOFTWARE 


Power Line Spikes, Surges & Hash could be the culprit! 
Floppies, printers, memory & processor often interact! 

Our unique ISOLATORS eliminate equipment interaction 
AND curb damaging Power Line Spikes, Surges and Hash. 

/jfcJ Clear up Software and System problems IS? 
with an ISOLATOR! 

ALL ISOLATORS: • 125 VAC, Standard 3-prong plug 

• 1 875 W MAX Load - 1 KW/Socket or socket bank 

• Balanced Pi Filtered sockets or socket banks 

• Spike/Surge Suppression • 1000 Amps, 8/20 usee 
(SUPER ISOLATORS offer expended filtering and 

Spike/Surge Suppression capabilities) 



ISO-1A -3 individually filtered sockets .... $ 56.95 

ISO-4 -6 individually filtered sockets .... 96.95 

ISO-2 -2 filtered banks; 6 sockets 56.95 

ISO-5 -3 flitered banks; 9 sockets 79.95 



•SWITCHABLE ISOLATORS - ALL ISOLATOR advantages 
combined with the versatility, convenience and utility of indi- 
vidually switched sockets. Each switch has associated pilot 
lite. 

ISO-6 -3 switched, filtered sockets $128.95 

ISO-8 -5 switched, filtered sockets 161.95 

•SUPER ISOLATORS - Cure for severe interference problems. 
Useful for Industrial applications and heavy duty controlled 
equipment or peripherals. 

• Dual Balanced Pi Filtered sockets 

• Spike/Surge Suppression - 2000 Amps, 8/20 usee 


ISO-3 -3 super filtered sockets $ 85.95 

ISO-7 *5 Super-filtered sockets 139.95 


•CIRCUIT BREAKER any model (add-CB) . ADD 7.00 
•CKT BKR/SWITCH/PILOT any model (CBS) ADD 14.00 


A PHONE ORDERS 1-617-655-1532 ^93 

ZSS Electronic Specialists , Inc. 

171 South Main Slraat. Natick. Mass. 0t760 
Dept. KB-B 


v* Reader Service index— page 241 


Microcomputing, October 1980 205 


JINSAM™ 

★ CUSTOM DATA FILES 
★CUSTOM REPORTS/LABELS 

★ KEYED RANDOM ACCESS 

★ FAST/EASY/MENU DRIVEN 

★ MULTIPLE SEARCH KEYS 

★ PRIVACY ACCESS CODES 

★ WILD CARD SEARCH 


Data Manager 


$ 175 . 


JINSAM” Data Manager for 16K-32K PET/CBM and CBM or 
COMPU/THINK Disk. (Printer optional). Stores up to 650 Records per 
disk. Has features listed above, plus 

FREE: LABEL PRINTER MODULE 
FREE: REPORT GENERATOR MODULE 

Powerful user commands. Self explanatory, easy to use. Straight forward 
input and editing routines - “idiot proof”. Create any desired relationship. 

TYPICAL APPLICATIONS: Personnel files, Customer files, Inventory, 
Sales records, School records, Appointment schedules, Real estate 
/Apartment listings, Subscription lists, Research surveys, Mailings. 


LISTED BELOW, optional MODULES which interface with JINSAM ¥ 
to access the entire database or select Records. 


MATHPACK™ allows +, -, x, + on any numeric field by a 

Constant or other numeric field. Results temporary or permanent. 

STATPACK™ descriptive statistical interface to find 

Average, Variance, Standard Deviation, Chi Square, Correlations, 
Regressions, Number of Occurances. Results to screen or printer. 

WORDPACK™ Word Processor interface to personalize 
text by accessing field contents for mass mailings, reports, invoices . . . 
Text may be saved, altered and recalled. Powerful commands to edit, 
center, insert, delete, move blocks of text. Screen editing. 

MULTI-LABEL™ module prints multiple labels per 

Record with 2 line caution message and consecutive numbering. 
Used for inventory label printing, lot numbering, serial numbering. 


USER’S GUIDE only 
DEMO TAPE $5 

Optional MODULES 


$ 25 

DEMO DISK $ 8 

$ 40 

each 


Specify CBM 2040 or COMPU/THINK DISK 


Special Offer (Save $35) 
Total Package $300 

JINSAM” + all modules above 


Send Check or Money Order plus $2 Shipping 
(NY residents add 8% Sales Tax) 

-DEALER INQUIRIES WELCOMED- 


JINI MICRO-SYSTEMS, Inc. 

P.O. Box 274-K • Bronx, NY 10483 


Gfl 


CANHELP'fOU-" 

■JffiSfc §r ' 

•,^1ceaw° nth 


COMPUTER 
INSTANT ADS 

Buy or sell fast with the Computer Instant Ads. The all ad 
low cost computer publication for individuals and businesses. 
It’s on convenient 8 V 2 " by 11" pages in easy to read type. 


Bargains — Computers, Components, Peripherals, Software, 
Positions and Help Wanted, whether you’re buying, selling, 
or swapping you can get fast results at low cost with the CIA. 


Instant Ads — If you don’t want to wait a few days for the next 
CIA issue— just dial our special computer hot line number 
(reserved for subscribers) anytime, 24 hours a day, and our 
computer will tell your computer (with 300 baud modem) all 
about the ads received by the CIA since our last issue. Call 
as often as you like. The only additional expense to you is 
the price of a direct dial phone call. But remember, if you 
don’t want to pay for the phone call, you only have a few 
days to wait because the CIA is published TWICE each month. 


LOW COST ADVERTISING — Only IOC: per word for one ad 
and just 8C per word per issue when the same ad is run in 
two or more consecutive issues. 

FREE ADVERTISING — Subscribe now for free advertising. 
Mail an ad (up to 50 words type written or printed, please) 
to us with your subscription and we will run it free; or phone 
your subscription using our toll-free number and charge your 
subscription to your VISA or Master Charge Card. When you 
telephone your subscription, we will send you a certificate 
for a free ad. 

LOW SUBSCRIPTION RATES T 0ne year JJJ , issues j on j y *22 
Two years (48 issues) only $20.00 

Subscribe NOW Call TOLL-FREE 1-800-453-6400 

^ 115 In Utah phone 268-3000 

COMPUTER INSTANT ADS ASSOCIATION 

277 East 6100 South • Salt Lake City, Utah 84107 


EH 



Skylcs Electric Works 


231 E South Whisman Road 
Mountain View, CA 94041 


206 Microcomputing , October 1980 







Reader service index— page 241 Microcomputing, October 1980 207 




0 , (/}-&> 

Od 


H 

0*d 03 

p 


3- 

S 8 0 

§32 

i 

X 

£ 

<D 

H 

0 

sr. 0 

M 

1 B*S 

P 

7 ? 

o, 

5 

0 


o 

3 Cn 
t3 - 5 

§ o 

5 *r h- 
p O 


O o\ 

o H 

to p 
■13 
O (t> 


CO 

§ 3 

a 

^ s 

to Q- 
% 

" $ 

3*2. 

~ O 

P s 

3 CO 
(t " — 


5 e 2 

5 ; o o 
r- ^ 3 
a- 3 
2 ^ 

. <T> 


= << pd x 
gf®. ® “ 

g 0D p B •? 
3 ■ *3 ^ 

3 Dd|S a 
3 S. 3 Eft £ 


3 or 


S' 


<< 

3 

§- S' 

C 3 

tt> P- 

<;£ 

?§ 
o n> 
3 J-* 

» 3 

ST 5’ 


M o' 
3 * 
3 *rj 

w ^ O 


<t> 

3‘ ct s 

< 03 S 
o S’ 

03 3 { 
e+ CD 
3 «2 . 
3 05 t 


03 a> 

2 3 *0 

£L ^ ^ 3 c 
* P’S 2- c 

3' i-t 2^ 

o 5 2 S 


c p 

? p 
a> 


•-* 03 


2 
3 

3 

A 
3 
0 

o 

g 

CO o' ^ 
o o ^ 
3 ~ _ 
2 o P 

2 >-b 03 
* ^ 
cr^.. 
o A co 

£-0 ^ 
O 

P 7? 
< A 

S 03 

►— ’ <r»- 

p sr 
£ 55’ 

A 

^ p 
° 8 
3 e 

F £ 

A 


o 

p 

X 

sr 

2 

o 


ss 2 

*r 3 3 

P <c 

arc 

A 


13 

o 

a; 

ST 

3 

co 

o^ 

<T 

A 

3 


3 ° 

:l 3 
I 2 


I ° 

>3 


03 O P3 

o £. < 
p <$ ® 
p 


_ s 
CP o 
o S’ 
S: £ 


9 3 

s.-’S- 

2 A 
3. x 
p 

• o- 

. A 
h< Q. 

o 5’ 
c o' 
o § 

ja CO 

<-K £5 

03 

c r a 

A CL 



© 

1—^ 

© 

9 

CD 

© 

a 


o 5 

m 

2 

H 

ii 

n 



o 8 8 S 

O o 

2 oo □□ a. 

3D W CD q 
O Z ° A 

ow°? 

o W jl 2. 

3 3) 2 n 

gs is. 

3 5 = CO 

fisf 

°5,d£ 
® 5" « 3 

— • 5C m 


agio 

co to ai a 



JllSSU? 

O 0 Q. g 2 A — o 
CjW^03On'' 
"O p ■ — « -• ■ 

c p 
o P 


> 

CO 

—I 

l 


w o 2 A ‘ P O 
oPF^P> ^ 
® 8 9r| “ =0 g 

n tr*, CO n D — L. 


£<q^oS&o 2: yc 

Q. A 0) ° ® 3 5? 

AA JC/l mad) 552 
U CO w A A ^ ^"O 

:i8i?ii||? 

rao fo® ^ 0 ^ 3 3 

O—SCO^J-CQ^Q — 00 
A3 C A a) ^ X 3 
=T.CQ W -O pr CO 2 E 5C 
S’ 'O'SAcnAS 

(Q wp o-< “ 3 ^ ®E 

•6 233.-2A3: "1st 
2.-|®5 : q.S® J 

is* is in 5 

^ Q. /a ^ A O P 


ziyJJPI 

3 < ° — c ® co s 
P<^®~ o ts 
AT53._ 
^ Zo C Eg- A 
T) 3:3Cr -0?c-3co 
S A O A S-g ® 

isssl®?? 

® «2 » ® I 2 ? 


t = 


> 

GO 


30 

as 


r 


Goodies from GALACTIC 

Specially Programs for 

TRS-80 Model I - II - III 


EDAS 4.0 (Editor/Assembler) 

This is the highly acclaimed "USER ORIENTED" Assembler 
for the TRS-80 Model II by GALACTIC. Loaded with features 
such as assemble to memory, block move, link to debugger, 
default filenaming, reverse video editing, warm start entry 
and much more. Now the programmer can write, assemble, 
test, and debug his code without ever leaving EDAS. 
EDAS 4.0 with complete manual (120 pages) 

Model II Version Was $229.00 

NOW ONLY $179.00 

MASS/MAIL SYSTEM 

This is the NAME and ADDRESS system for subscription 
control or large mailing lists. It will handle up to 10,500 
records, with a worst access time of less than 15 seconds 
and usual access of less than one second. All adds, deletes, 
and edits are instant for the operator and are then 
completed later in a "batch monitor". Extensive documen- 
tation and ongoing support. Requires TRS-80 Model 1 1 and 2 
disk drives minimum. Contact GALACTIC direct for detailed 
specifications and prices for your exact needs. 

Model II Version Contact GALACTIC for Price 

STOCK MARKET MONITOR 

This day to day market monitor is designed for the active 
trader. The system will track the performance of an issue 
against the market as well as against itself. The package 
comes with complete documentation and explainations of 
the formulas that are used by the program. The system is 
available for the Model I and the Model III TRS-80. 


Model I and III cassette version $89.00 

Model I and III disk version $99.00 

INVENTORY MASTER 


Tired of being a slave to an out-of-control inventory? Let 
GALACTIC'S INVENTORY MASTER put you in control of your 
inventory. INVENTORY MASTER operates on a TRS-80 
Model I and Model III 48K disk system (Minimum of 2 drives 
with capabilities of up to 4 drives). Drive spanning 
capabilities allow you to track 2700 inventory items with a 4 
drive system (5100 items for the Model III). Unique 
machine language sort allows for instantaneous item 
insertion (approx. 15 seconds with 2700 items in system). 
Item access can be immediate using system-supplied 
control numbers. Modeled after a proven main-frame 
system costing tens of thousands of dollars. Complete 
add/edit/delete capabilities supported. Placement of 
orders can be machine-generated as well as user- 
generated, with editing capabilities. Full report-generator 
included. Exquisitely documented. 


Model I Version $159.00 

Model III Version $259.00 


MODEL II HOST I/O SYSTEM 

From the original author of the TRS-80 HOST and TERM 
systems in the RADIO SHACK "COMMUNICATIONS 
PACKAGE". This system allows the full control of the HOST 
facility by your BASIC program. Set the number of nulls to 
be sent after a C/R, set a command line to be executed if 
carrier is lost, turn HOST on and off, switch to channel A or B 
as desired, enable and disable the ability for the remote 
terminal to "BREAK" BASIC, identify whether a character 
came from the HOST’S keyboard or from the REMOTE’S and 
more. No knowledge of assembler needed. All options may 
be accessed from BASIC or ASSEMBLER. Complete with 
detailed documentation. Don’t isolate your Model II, Let 
outside terminals access it’s computing power. 


Model II with TRSDOS 1.2 $179.00 

Model II with TRSDOS 2.0 $199.00 

MAIL/FILE SYSTEM 


This is the name, address, phone number data base 
manager that has set the standard by which other systems 
are compared. This system contains advanced editing and 
output capabilities. The TRS-80 Model I system will handle 
up to 600 records per file, while the Model III version will 
handle up to 1150 records and the Model II will handle 
2500 records per file. All versions are file compatable and 
maintain constant sort indexes on both NAME and ZIP 
CODE. International PHONE numbers and ZIP CODES are 
supported. Thousands of code combinations are available. 
The Model II version also has a "word processor" type input 
editor and fast assembler sorting. Complete documentation 
is included with each version of MAIL/FILE. 


Model I Version $ 99.00 

Model III Version $149.00 

Model II Version $199.00 

ULTRA TREK 


This is an all new concept for this type of game, and 
compares to the others like chess compares to checkers. 
ULTRA-TREK is a complex, logical game, intended for the 
serious contestant. It is doubtful that you will ever master 
this game, but you will certainly enjoy trying! This program 
requires a TRS-80 Level II, 16K or more. The program is 
written totally in BASIC and uses 15.5K of RAM. 

Model I & Model III Version 

(cassette only) $14.95 

galactic software ltd / 301 

A Division of GS & WS, Inc. 

11520 N. Port Washington Rd 
Mequon, Wisconsin 53092 
(414) 241-8030 



Money Orders & COD’s Shipped Within 24 Hours. Checks allow 2 weeks. 


Overlay Programming 


Small memory space? Take a tip from IBM and try this memory-saving technique. 


Robert A. Peck 
1276 Riesling Terrace 
Sunnyvale CA 94087 


M any microcomputer users 
start out on small systems 
such as KIM, SYM, COSMAC 
and D-2. These one-board BASIC 
computers all have one thing in 
common: a minimal amount of 
memory space reserved for the 
user program. They often allow 
as few as 256 bytes of RAM 
space for user access. 

Even when we add the remain- 
ing on-board memory to the 
basic unit, we end up with be- 
tween 512 bytes and 4096 bytes 
of available space. When a com- 
puter user runs out of on-line 
memory space, regardless of 
the size of the system being 
used, he has various choices: 

1. Purchase additional mem- 
ory (with expansion power sup- 
plies) and perhaps an adap- 
tation for bus compatibility. 

2. Sell off the “basic unit” 
cheaply to a friend or a broker so 
you can save money to buy a 
bigger unit with more memory 
already installed and rewrite 
your programs to fit the new pro- 
cessor. 

3. Make the programs fit the 
available memory space by tak- 
ing advantage of your off-board 
mass-storage device and the 
use of an overlay program struc- 
ture as described below. 

Running out of RAM space 
happens not only to the small 
micro user, but also to all of the 
rest of the processor users from 
small systems to the giants. 


These larger-system users use a 
technique that could prove 
useful to users of minimal 
systems as well: the overlay 
structure. 

How the Big-Systems Users 
Do It 

This technique called overlay 
is often applied to devices in 
which a functional program 
takes up almost all of the avail- 
able memory-storage space. In 
order to check out the opera- 
tional characteristics of the de- 
vice, reserve an area of the RAM 
for the loading of the diagnostic 
programs. 

If the diagnostic program 
storage area is small, an in- 
terlinked chain of programs may 
be called in to test each ma- 
chine function, in turn, and to re- 
port the results of that portion of 
the tests. After this, the next 
routine in the chain is read into 
that same memory section as 
occupied by its predecessor. 
Then control is given to this next 
program segment for its diag- 
nostic operation. 

It is called an overlay struc- 
ture because the new diagnos- 
tic program entirely erases and 
replaces the program that pre- 
cedes it. Each program is stored 
and executed from only that 
segment of the memory re- 
served for the storage of the 
diagnostic routines. 

When the diagnostics are 
completed, the machine allows 
the option of either running 
more diagnostics or returning 
control to the master program. 
That master program would, in 
this case, have taken up most of 
the available RAM space, and 


the troubleshooting diagnostics 
would have taken up relatively 
little space. 

There are several reasons for 
this: 

1. The unit is designed so that 
it works “perfectly” most of the 
time. 

2. The master program, for 
economic reasons, takes up 
most of the space in that there is 
little reason to install any more 
memory than absolutely needed 
for normal operation. 

3. The diagnostic routines can 
be made simple enough so that 
each may check a small number 
of basic machine functions. 

4. Depending on the capabil- 
ities of the mass-storage device 
associated with it, there may be 
little reason to limit the total 
number of diagnostic routines 



T" 

312 BYTES OR LESS 
(DENOTED "X" BYTES 
PER SEGMENT), LIMITED 
BY AVAILABLE USER 
RAM SPACE 


"x“ BYTES OR LESS 


T 

"X" BYTES OR LESS 
1 


Fig. 1. The initial step— program 
segmentation. 


loaded one at a time, except to 
use sufficient programs to have 
tested all desired basic func- 
tions of the device. 

Therefore, .for the machine 
type, which is described above, 
when power is applied, we 
would load the master program, 
which runs all of the basic func- 
tional items in the machine, in- 
cluding monitoring the control 
switches. If a diagnostic routine 
is desired, that routine is loaded 
into a separate segment of RAM 
and is executed. After this, con- 
trol passes again to the main 
program, which may load an- 
other diagnostic routine or 
simply continue on with its nor- 
mal operating sequence. 

As stated, the device we ex- 
amined earlier used most of the 
RAM space for the storage of 
the functional program and only 
a small amount for the diag- 
nostic routines. The small-sys- 
tem user, however, is more likely 
to reserve a maximum portion of 
his RAM space for the program 
material. 

Program Structure 

As an initial plan for fitting a 
large program into a small 
space, we must first consider 
structuring the program as 
noted in Fig. 1. Each of the seg- 
ments should be capable of fit- 
ting individually into the avail- 
able user RAM space. 

Note the linear flow between 
the segments in Fig. 1. The dia- 
gram is intended to show the 
need for these segments to 
operate independently. Using 
the logic outlined in Fig. 2, we 
can see that a relatively small 
control program can be used to 


208 Microcomputing, October 1980 


LDA 

NXTSEG 

;load acc with next segment ID number 

STA 

TAPEID 

;store in tape ID byte search compare area 

JSR 

TPLOAD 

;call tape-load subroutine (part of monitor) 

JMP 

STARTX 

;jump to the starting point of this routine 
;(not the next routine) 

Example 1. A typical link call sequence. 


oversee the loading and execu- 
tion of a considerably larger 
segmented program. 

Fortunately, many manufac- 
turers of single-board com- 
puters write their tape-load pro- 
grams as subroutines within 
the monitor program. Although 
these routines are normally 
called by the monitor and return 
control to the monitor, we can 
use them within our programs 
and regain control from the sub- 
routines after the tape load has 
been completed. Thus, we can 
effectively reduce the size of our 
control program by efficient use 
of the monitor subroutines. 

There may be occasions, 
however, when even the relative- 
ly small size of the control pro- 
gram tends to get in the way. 
This could happen if there is a 
need to transfer a large number 
of variables between program 
segments. This forces us to re- 
serve more of the control pro- 
gram space for common area 
storage. 

Linking Program Segments 

If control program space is in 
a squeeze, we could, instead, 
place the cassette subroutine 
call linkage within each of the 
program segments. Thus, each 
individual segment would have 
duplication of the tape-load sub- 
routine call, but we would have 
possibly reserved more space 
by this means for the passing of 
variables between program seg- 
ments. 

As an example, let’s look at a 
typical tape-load routine linkage 
that might be contained within 
a single program segment. It 
could be placed at the logical 
end of the segment because it is 
considered the exit point from 
that segment and the linked en- 
try to the next segment (see Ex- 
ample 1). The last line, at first 
glance, may be a little difficult to 
understand, but with a little ex- 
planation it is really quite clear. 


Since this is an overlay struc- 
ture, each program segment 
completely replaces the original 
segment that occupied that 
RAM space. When we jump to 
the tape-load subroutine, the 
program counter contents are 
pushed onto the stack. When we 
complete the tape load, the 
return address is popped off the 
stack and reloaded into the pro- 
gram counter. 

At this point, the processor 
executes the instruction cur- 
rently residing at the location 
immediately following the loca- 
tions formerly occupied by the 
call to the tape-load subroutine. 
So we went off to a tape-load 
routine and when we came back 
to the area originally occupied 
by the calling program, we were 
actually jumping into a new pro- 
gram that has since replaced it 
in that same memory space. 
Therefore, when we return, we 
will execute a jump to the start 
location of the newly loaded 
segment. By maintaining the 
same structure in each of the 



Fig. 2. The overlay control pro- 
gram structure. 


0200 

Segment 3 

0200 

Segment 4 


Program 


Program 

03F5 

LDA 04 

03F5 

LDA 05 

03F7 

STA TAPEID 

03F7 

STA TAPEID 

03FA 

JSR TPLOAD 

03FA 

JSR TPLOAD 

03FD 

JMP BEGIN03 

03FD 

JMP BEGIN04 



Example 2. 



segments, however, we can 
always assure that the pro- 
cessor knows where to find its 
next instructions. 

To demonstrate this, let’s put 
some numbers with the example 
above (see Example 2). After we 
have executed the main body of 
segment 3, we load the accumu- 
lator with the value of the next 
segment’s ID code at 03F5. Then 
at 03F7 we store it in the byte 
area where the tape-load routine 
looks for a comparison to the 
tape ID being read. Now, at 
03FA, we jump to the tape-load 
subroutine from segment 3. This 
will load segment 4 into loca- 
tions 0200-03 FF, where segment 
3 was before. 

When we execute the return 


from the tape-load subroutine, 
the processor will execute the 
instruction at 03FD. This in- 
struction, you will note, is now a 
segment 4 instruction, not seg- 
ment 3, due to the overlay that 
has occurred. Therefore, within 
that segment 4, the instruction 
indicates a jump to the begin- 
ning of segment 4 as other seg- 
ments will, in this same area, in- 
dicate a jump to their own start- 
ing areas. 

Thus, if all of the program seg- 
ments are constructed in this 
manner, we will only be limited 
by the adaptability of the pro- 
gram to this type of structuring. 
For the memory-limited pro- 
grammer, this method may 
prove to be useful. ■ 


Jrimcattonal 

Haitian re . , 

professionals, _ 

HI RES TITRATION JltO* 

HI-RES TITRATION is a simulation of an acid base titration using 
the Apple high-resolution color graphics. The program was written 
for use as a prelaboratory preparation and practice. It is effective 
as a lecture demonstration or for use by individual students. The 
program was written for high school use, but it is also useful for 
college chemistry classes. 

32 K Applesoft with Disk $19.95 

RETAILING MATH 

RETAILING MATH is a computer assisted instruction in the 
fundamentals of pricing mathematics. Lessons and reviews deal- 
ing with the mark-up equation, mark-up percentage and deter- 
mining retail and cost prices are reinforced thru interactive 
exercises after each lesson by vocationally certified instructions. 
48K Applesoft with Disk $39.95 

EDUCATIONAL CHARADES 

EDUCATIONAL CHARADES is an age-long game modified for 
classroom use. The teacher can create charade files relative to the 
current subject being taught. 

32 K Applesoft with Disk $19.95 

APPLE-GRAMMER requires 32K in Applesoft and a disk drive . . . 

$19.95 

TEACHERS’ AIDE I with Multi-Choice format requires 32K in 
Applesoft and a disk drive 1 9.95 

TEACHERS’ AIDE II with True and False format requires 32K in 
Applesoft and a disk drive $19.95 

38437 Grand River# Farmington Hills, Ml 48018 
(313)477-4470 ^ 156 

Dealer’ Inquiries Welcome 


Microcomputing, October 1980 209 


A Roundoff Function in Applesoft 


Keep your numbers at a manageable length. 


Barton M. Bauer s, Jr. 
30 Hillock Drive 
Wallingford, CT 06492 


W hen writing programs in Applesoft, 
you will occasionally need to round 
off an answer to a specified number of 
decimal places. Example 1 shows a simple 
function that will handle almost all of your 
round-off requirements. 

If you place this function at the beginning 
of your program, you need only to set XQ 
equal to the number of decimal places you 
wish to have in your final answer and use 
the statement VAR = FN RD(VAR), where 
VAR is the name of any real (floating-point) 
variable in your program. 

How the Function Works 

Review the function and dissect it into its 
constituent elements. The function breaks 
down into six pieces: 

First, (10 A XQ) raises the value ten to a 
power that is the same number as the 
number of decimal places you want in your 
answer. 

Second, X* multiplies the result of (10 A 
XQ) times the variable you wish rounded. 


Third, + .5 adds one-half to this result. 

Fourth, INT takes the integer representa- 
tion of the result of step three. 

Fifth, (10 A ( - XQ)) raises the value ten to 
a power that is the negative equivalent of 
the number of decimal places you want in 
the answer. 

Sixth, multiply the results of step five by 
the results of step four. 

Consider the example 4.457453. We will 
use this number to demonstrate how FN 
RD(X) works. Assume for now that you want 
this number rounded to two decimal places. 
Using the six steps above, the function 
described will calculate the correct value as 
follows: 

XQ will equal 2, the number of decimal 
places you want in your answer. Therefore, 
(10 A XQ) will equal (10 A 2), or 10 squared, 
which is 100. 

The variable X is equal to 4.457453. Note 
that X is only a phantom variable, to be 
replaced by the actual variable you use. 
Multiplying X by the result of step one, 100, 


DEFFN RD(X) = INT(X * (10 AXQ) + .5) *(10 A(-XQ)) 

Example 1. 


gives us 445.7453. 

To the result of step two we add .5, so our 
new value is 446.2453. 

By taking the integer value of this 
number, we will get 446. 

(1 0 A ( - 2)) (remember, XQ was set to 2) is 
the same as 1/(10 A 2), which is equal to 
1/100, or .01. 

Multiplying 446*.01, we get the final 
answer: 4.46. 

Not Perfectly Round 

While this function will provide accurate 
rounding in almost all of your programs, it is 
not 100 percent perfect. Some values, when 
internally represented in your computer, are 
pre-rounded: the actual value that FN RD(X) 
sees when it starts its work is not the same 
number that was keyed in. This will cause a 
slight under- or over-rounding, but it is not 
the fault of the function. Indeed, I have 
worked with FORTRAN programs and have 
written similar rounding functions and have 
encountered similar minor rounding dif- 
ferences for some values. 

You should therefore carefully consider 
whether or not an occasional rounding dif- 
ference is acceptable. If it is not, then you 
should further question whether or not any 
rounding is appropriate for that problem. II 


MOVING? 

Let us know 8 weeks in advance so that you won't 
miss a single issue of Kilobaud Microcomputing. 
Attach old label where indicated and print new address 
in space provided. Also include your mailing label 
whenever you write concerning your subscription. It 
helps us serve you promptly. 


□ Address change only 

□ Extend subscription 

□ Enter new subscription 

□ 1 year $25.00 


□ Payment enclosed 


□ Bill me later 


If you have no label handy , print OLD address here 


ki 

Name _ 
^ Address 
t City 


n 


Name 


Address 
City 


. State. 


Zip. 


print NEW address here: 


. State. 


-Zip. 


Kilobaud Microcomputing P.O. Box 997 •Farmingdale NY 11737 


210 Microcomputing, October 1980 



Accessories and Software 

for Apple, Commodore, TRS-80, Atari 

Call TOLL FREE - 800-421-0347 

Hardware for Apple, Commodore, Vector -CALL 






fsP?' 






[apple 


ACCESSORIES 


CORVUS 10 MEGABYTE DISK DRIVE $4649 

PASCAL LANGUAGE SYSTEM p 

GRAPHICS INPUT TABLET V- 

DISK II with CONTROLLER CARD - 

DISK II without controller 

APPLE SOFT II FIRMWARE CARD 1 * 

INTEGER FIRMWARE CARD I 

PARALLEL INTERFACE CARD L. 

SERIAL INTERFACE CARD - 

COMMUNICATIONS CARD I 

SERIAL INTERFACE CARD 

SUP-R-MOD RF TV MODULATOR 24 

SUP-R-TERM 80 col CARD 348 

DAN PAYMAR Lower case kit 44 

SVA 8" DISK CONTROLLER CARD 348 

CtS ARITHMETIC PROCESSOR CARD. 348 

CLOCK/CALENDAR CARD 238 

INTROL X-10 SYSTEM 238 

SUPER TALKER SPEECH SYNTHISIZER 258 

ROMPLUS CARD w/KEYBD FLTR 17e 

HEURISTICS SPEECHLINK 2000 224 

DC HAYES MICROMODEM II 334 

ALF MUSIC SYNTHISIZER 244 

SSM A10 CARD (KIT) 128 

SSM A10 CARD (ASSEMBLED) 189 

NOVATION CAT MODE M 158 

CCS GPIB IEEE INTERFACE 268 

MICROSOFT Z-80 SOFT CARD w/CP/M 348 
MICROWORKS DS— 65 DIGISECTOR. . 348 

ROMWRITER 158 

SYMTEC LIGHT PEN CARD 228 

CCS PROGRAMMABLE TIMER MODULE 158 
CENTRONICS PRINTER INT CARD .... 189 
SLIENTYPE PRINTER w/INT CARD . 528 

APPLE SOFTWARE 

3 MILE ISLAND. Muse 39.96 

3-D ANIMATION-D. Programma Inti .... 24.95 

3D ANIMATION. Sub Logic 55.00 

3D GRAPHICS. Programma Inti 24.95 

6502 ASSEMBLER. Personal S/W 24.95 

8080 SIMULATIONS. Sybex 19.96 

ABBS. Periph Unltd 49.95 

ACCOUNTING ASSISTANT. Instant S/W 7.95 

ADDRESS BOOK. Muse 49.95 

ADVENTURE 3 & 4. Creative Comp . . 24.95 

ADVENTURE-D. Microsoft 29.95 

ADVENTURE-D, Programma Inti 21.95 

ADVENTURELAND. Creative Comp . . 14.95 

ALIEN LANDER. Sierra Software 24.95 

AMPERSORT 2. Programma Inti 15.95 

ANALYSIS 1. Galaxy 49.95 

ANALYST. Programma Inti 15.95 

APMAIL, Programma Inti 19.95 

APPILOT. Muse 49.95 

APPLE DOC. So west Data 24.95 

APPLE LISNER. So ft ape 19.95 

APPLE PIE-D, Programm Inti 24.95 

APF’LE PILOT, Programma Inti 24.95 

APPLE PLANET. Programma Inti 24.95 

APPLE POST. Apple 50.00 

APPLE WRITER. Apple 75.00 

APPLEFORTH. Programme Inti 49.95 

APPLESOFT OPTIMIZER. Programma 19.95 


APPLESOFT PLUS. Programma Inti . . 24.95 

APPLETALKER. Softape 15.95 

APPLEWORLD, United Software 59.95 

ASSEM LANG DEVELOPMENT. Hayden 39.95 

ASSEMBLER. Microproducts 39.95 

ASTEROIDS. Quality Softwr 19.95 

ASTROAPPLE. Software Factry 15.00 

AUTOCHECKERS, Programma Inti 15.95 

BITS. Periph Unltd 34.95 

BABBLE. Software Factry 15.00 

BASEBALL, Muse 14.95 

BATTLESHIP COMMAND. Quality Sftw 14.96 

BATTLESTAR 1, Programma Inti 15.95 

BAZOOKA. Programma Inti 15.95 

BEST OF BISHOP. Softape 39.95 

BLOCKADE. Personal S/W 14.96 

BOWLING. Apple 15.00 

BRAIN GAMES. Creative Comp 7.95 

BRIDGE CHALLENGER. Personal S/W . 14.95 

BRIGHT PEN. Softape 34.96 

BUSINESS/FINANCE, Programma Inti 19.95 

CAI PROGRAMS-D. Creative Comp 14.95 

CASTLE ADVENTURE. Programma Inti 15.95 

CCA DATA MGMT . Personal S/W . . 100.00 

CHECKBOOK. Apple 20.00 

CHECKBOOK. Programma Inti 34.95 

CHECKBOOK KING-C. Personal S/W 19.95 

CHECKER KING-C. Personal S/W 19.95 

CHECKER KING-D. Personal S/W 24.95 

CLOWNS & BALLOONS. Programma 15.95 

COMPUMATH. Edu Ware 39.95 

COMPUREAD. Edu Ware 24.95 

CRAPS. Softape 14.95 

DANS DISK. Periph Unltd 24.96 

DART ROOM. Programma Inti 15.95 

DATA MANAGER. Hayden 49.95 

DATABASE. Programma Inti 19.95 

DATABASE II. Programma Inti 29.95 

DATABASE MAIL-D. Programma Inti . 29.96 

DATAMOVER. Apple 7.50 

DDU & SDC. Periph Unltd 39.95 

DEPTH CHARGE. Programma Inti 15.95 

DISASSEMBLER. Microproducts 34.95 

DOW JONES. Apple 50.00 

DUAL RACE. Systems Design 16.95 

EARTHQUEST-D. Programma Inti 19.95 

EASY WRITER. Personal Softwr 99.95 

ELECTRIC CARD FILE. Softape 19.95 

ELECTRIC CRAYON. Muse 17.95 

ELEMENTARY MATH. Muse 39.95 

ENERGY AUDIT-C. Instant S/W . 80.00 

ENGINEERING MATH-1. Hayden 14.95 

ESCAPE. Muse 12.95 

FASTGAMMON-C. Quality Softwr 19.95 

FASTGAMMON-D. Quality Softwr 24.95 

FILE HELPER. Baclan 49.00 

FINANCE PACK. Apple 25.00 

FLASH CARDS. Programma Inti 9.95 

FLIGHT SIMULATOR. Sub Logic 25.00 

FOOTBALL. Programma Inti 9.95 

FORM LETTER. Periph Unltd 24.95 

FORTE. Softape 19.95 

FORTH. Softape 49.95 

FRACAS-C. Quality Softwr 19.95 

FRACAS-D. Quality Softwr 24.95 

GALACTIC CONFLICT. Programma Inti 15.95 

GAME PLAY w/BASIC. Hayden 9.96 

GAME PLAY w/BASIC 2. Hayden 9.95 

GAME PLAY w/BASIC 3. Hayden 9.95 

GAMON GAMBLER-C. Personal S/W. 19.95 

GAUNTLETS. Programma Inti 99.95 

GENERAL MATH-1. Hayden 14.95 

GLOBAL WAR. Muse 17.95 

GOBLINS. Programma Inti 15.95 

GRADE BOOK Creative Corp 24.95 

GRAPHIC UTILITIES. Personal S/W . . . . 14.95 
HI RES ADVENTURE #1. On Line Syst 24.95 

HIRES PLAYGROUND. Systems Design 24.96 
HOME ACCOUNTING-C. Programma Int 9.95 
HOME ACCOUNTING-D, Programma 15.95 

HOUSEHOLD FINANCE. Programma 24.95 

HOUSEHOLD INVENT . Programma . . 24.96 
INSTANT LIBRARY-C. Softape 39.95 

INSTANT LIBRARY-D. Softape-39.96 

JOHN S DEBUGGER. Broderick 35.00 

LASER TURRET, Programma Inti 9.95 

LISA. Programma Inti 34.95 

MAIL LIST. Periph Unltd 39.95 

MATCHWITS. Programma Inti 9.95 

MATH TUTOR 1. Instant S/W 7.95 

MATH TUTOR 2. Instant S/W 7.96 


/MICRO. 

BUSINESS WORLD 

15818 Hawthorne Blvd iS 248 
Lawndale, CA 90260 < 213 ) 371-1660 


MATRIX INVERT-C. System Design ... 13.96 

MAZE GAME. Muse 12.96 

MEMO CALENDAR. Periph Unltd 29.95 

MICRO INFOSYSTEM. Muse 99.95 

MICROCHESS. Personal S/W 19.96 

MICROCHESS-C. Apple 20.00 

MICROCHESS-D. Apple 25.00 

MICROGAMMON. Softape 14.95 

MINI LEDGER. Programma Inti 59.95 

MINI LEDGER-D. Programma Inti 59.95 

MISSION IMPOSSIBLE. Creative Comp 14.95 

MONITOR-D, Programma Inti 49.95 

MORTGAGE, Instant S/W 7.95 

MULTIPLE REGRESSION, Systems D . 24.95 
ORIGINAL ADVENTURE-D. Creative Cp 24.95 
OUTDOOR GAMES. Creative Comp. 14.95 

PAD. Datasoft 19.50 

PITS. Periph Unltd 30.00 

PUMP. Periph Unltd 25.00 

PARCHESI. Programma Inti 6.95 

PERCEPTION l.ll.lll. Edu Ware 19.96 

PERPUTUAL CALENDAR. Programma 9.95 

PHASOR ZAP, Programma Inti 15.95 

PINBALL Programma Inti 15.95 

PIRATE ADVENTURE. Creative Comp . 14.95 

POWER EDITOR. Programme Inti 15.95 

PRO GOLF. Softape 12.95 

PROGRAM EDITOR. Synergistic 40.00 

PROGRAMMING AID. Dakin 5 39.95 

PROGRAMMING AID 2. Dakin 5 49.95 

QUARTER HORSE RACE. Programma 6.95 

RAM TEST TAPE. Apple 7.50 

ROCKET PILOT. Softape 12.95 

SARGON 2, Hayden 27.00 

SARGON-C. Hayden 19.95 

SARGON-D. Hayden 34.95 

SCORPION ATTACK. Programma Inti . 15.95 

SCREEN MACHINE. Softape 19.95 

SHELL GAMES. Apple 30.00 

SINGLE DISK COPY. Periph Unltd . . 19.95 

SKEETSHOOT. On Line 14.95 

SOLITAIRE. Programma Inti 15.95 

SPACE. Edu Ware 29.95 

SPACE II. Edu Ware 24.95 

SPACE SHUTTLE LANDING. Harvey . . 15.00 
SPACE/SPORTS GAMES. Creative Cp 14.95 

SPYTREK. Programma Inti 15.95 

STAR WARS. Softape 12.95 

IF YOU DON'T SEE IT HERE. CALL 
US. WE CARRY EVERYTHING FOR 
APPLE. TRS-80. COMMODORE. 
VECTOR. ATARI. SORCERER. 
TEXAS INSTRUMENTS. AND 
MORE) 

STATISTICS, Programma Inti 19.95 

STATISTICS. Edu Ware 17.95 

STIMULATING SIMULATIONS. 

Personal S/W/ 14.95 

STOCK MARKET. RTR 79.95 

SUPER TEXT. Muse 100.00 

SUPERCHIP. Eclectic 100.00 

TALKING CALCULATOR. Softape 12.95 

TALKING DISK. Programma Inti 19.95 

TEXT EDITOR. Periph Unltd 59.95 

THE CASHIER. Apple 250.00 

THE CONTROLLER. Apple 625.00 

THE SOURCE Periph Unltd 25.00 

THE SOURCE. TCA 29.95 

THE TYPESETTER. Programma Inti . 29.95 

TIC TAC TALKER Softape 19.95 

TIME CLOCK. Programma Inti 6.95 

TIME TREK. Personal S/W 14.95 

TINY PASCAL. Programma Inti 49.95 

TRAPSHOOT. On Line 19.95 

TRIVIA )[. Prooramma Inti 15.95 

TURF ANALYSIS. Systems Design 21.95 

TYPE TRAINER. Programma Inti 15.95 

TYPING TUTOR. Microsoft 14.95 

UNCLE SAM, Muse 12.95 

UPDATES Periph Unltd 39.95 

VISICALC. Personal S/W 150.00 

VOYAGER EXCURSION. Programma 15.95 
WEIGHT PLOTTER. Programma Inti 19.95 
WHATSIT. Computerheadgr 125.00 

WINDFALL. Edu Ware 19.95 

CALL US TOLL FREE 
FOR NEW CATALOG 
OF ACCESSORIES & 
SOFTWARE 800-421-0347 


PET 

ACCESSORIES 

Commodore Dual Floppy Disk Drive $1,285.00 
Second Cassette— from Commodore . 95.00 

Commodore PET Service Kit 30.00 

Beeper— Tells when tape is loaded 24.95 

F>etunia— Play music from PET 29.95 

Video Buffer— Attach another CRT 29.95 

Combo— Petunia abd Video Buffer 49.95 

TNW Bi-Dir RS-232 printer S-face 229.00 

KIM A (A Single Board Computer 

from Commodore) 179.00 

CMB 8050 Dual Drive Floppy Disk . . 1,695.00 

CBM Modem 395.00 

CBM Voice Synthesizer 395.00 

PET TO IEEE Cable 39.95 

IEEE TO IEEE Cable 49.95 

KIM1 & Power Supply Package Special 200.00 


PET 


SOFTWARE 

ACTION. Soundware $9.95 

ACTION GAMES. Creative Comp 7.95 

ALPHABET. Commodore 9.95 

AWARI. Programma Inti 9.95 

BACKGAMMON. Commodore 9.95 

BACKGAMMON. Hayden 10.95 

BASIC BASIC. Commodore 14.95 

BASIC FINANCE. Commodore 24.95 

BASIC MATH. Commodore 29.95 

BATTER UP. Hayden 10.95 

BATTLESHIP. Programma Inti 9.95 

BLACKJACK. Commodore 9.95 

BLOCKADE. Programma Inti 9.95 

BLOCKADE. Personal S/W 14.95 

BOWLING. Commodore 9.95 

BRIDGE CHALLENGER. Personal S/W . 14.95 

CHASE. Programma Inti 9.95 

CHECKBOOK. Commodore 24.95 

CHECKER KING. Personal S/W 19.95 

CHECKERS. Instant S/W 7.95 

COSTING. Commodore 19.95 

DATA BASE UTILITY. Commodore . . 24.95 

DEPTH CHARGE. Programma Inti 9.95 

DIET PLAN. Commodore 14.95 

DISASSEMBLER. Commodore 24.95 

DOW JONES. Instant S/W 7.95 

DUNGEON OF DEATH. Instant S/W . 7.95 

GALAXY GAMES. Commodore 9.95 

GAME PLAY w/BASIC. Hayden 9.96 

GAME PLAY w/BASIC 2. Hayden 9.95 

GAME PLAY w/BASIC 3. Hayden 9.95 

GRAPHIC GAMES #1. Creative Comp . 7.95 

GRAPHIC GAMES #2. Creative Comp .7.95 
GRAPHIC UTILITIES. Personal S/W 14.95 

GRAPHICS. Commodore 9.95 

GUESS A SENTENCE. Commodore . . 29.96 

HANDS ON BASIC. Commodore 14.95 

HOME ACCOUNTING, Programma Inti. 9.95 

LOGIC #1. Creative Comp 7.95 

LOGIC #2. Creative Comp 7.95 

MACHINE LANGUAGE. Commodore 9.95 

MAYDAY. Hayden 9.95 

MICROBASEBALL. Hayden 9.95 

MICROCHESS. Personal S/W 19.95 

MONITOR. Programma Inti 6.95 

MORTGAGE. Instant S/W 7.95 

MORTGAGE. Commodore 14.95 

NUMBER GAMES. Creative Comp 7.95 

NUMBER REVERSAL. Commodore 9.95 
ON THE HOUSE. Commodore 9.95 

PERSONAL ACCT’NG . Programma Inti 19.95 

PET SHOW. Commodore 9.95 

PIRATE ADVENTURE. Creative Comp . . 14.95 
PROJECTILE MOTION. Commodore 19.95 

REALTY. Commodore 59.95 

RHYMING. Commodore 9.95 

SERIES/PARALLEL. Commodore . 19.95 

SLOT MACHINE. Programma Inti 6.95 

SOME COMMON BASIC PROB-D. 

Osborne & Assoc 9.96 

SPACETALK. Commodore 9.95 

SPACETREK. Commodore 9.95 

STATISTICS. Commodore 29.95 

STOCK PROTFOLIO. Commodore 24.95 
STRATHCLYDE BASIC. Commodore 14.95 
TARGET PONG. Commodore 9.95 

TIME TREK. Personal S/W 14.95 

TREK X. Instant S/W 7.95 

TURF & TARGET. Instant S W 7.95 

USER PROT COOKBOOK. Commodore 9.95 
UTILITIES Smithware 7.95 

VIDEO CHECKERS. Compuquote 14.95 

WORD PROCESSING 2 Commodore 99.95 
WORD PROCESSING 3. Commodore 199.95 
WORLD CLOCK. Commodore 9.96y 






Clock Control Board 


Mark A. Schimelman, M.D. 
255 Townhouse 
Hershey PA 17033 


T he TRS-80 is a great com- 
puter . . . almost. The people 
at Tandy Corporation did a good 
job of building an efficient, re- 
liable machine at low cost. They 
did not, however, put everything 
that they could have into that 
handsome case to make it the 
most desirable machine on the 
market. 

Some of the more commonly 
recognized omissions include 
the lack of lowercase char- 
acters, the lack of standard TV 
video modulation, the inability 
to include Level I and II ROMs in 
the same machine and a rel- 
atively slow clock for micropro- 
cessor operation. 

Fortunately, hardware buffs, 
being compulsive creatures, 
cannot stand such a vacuum. 
They have created a whole 
library of solutions— some of 
which are elegant in concept 
and function— to each of these 
problems. I recently purchased 
one such elegant device, the 
TRS-80 Clock Control Board, 
produced by William Archbold, 
106 Snyder Dr., Mather AFB CA 
95655. 

I mailed off my $14.95, be- 
cause Bill promised in his ad 
that the user could control the 
clock rate with simple Level II 
commands and change clock 
rates without destroying resi- 
dent programs (a problem I had 
with previous modifications). 
My kit arrived promptly eight 
days afterward and included a 
clock control board, instruction 
manual, hookup wire and dou- 


Speeds up your TRS-80. . . elegantly. 


ble-sticky pads for mounting in 
the computer case. 

Control Board 

The clock control board is a 
professional-quality 2Vz x V/t 
inch double-sided PC board with 
four ICs, a resistor and a 
capacitor already preas- 
sembled. There are nine clearly 
labeled holes for the connection 
of the board to the motherboard 
via jumper wires. 

The manual is simple and 
clearly written with a good dia- 
gram showing proper connec- 
tion points (see Fig. 1) and a 
schematic of the control board 


Z56, pin 8, is cut. Total instal- 
lation time was one hour, which 
included double-checking the 
wiring twice. The board worked 
perfectly the first time. 

When the computer is pow- 
ered up, the control is auto- 
matically set to the normal 1.77 
MHz rate. To change the rate to 
2.66 MHz, all you have to do is 
type OUT 254,1 ENTER; to 
change back to 1.77 MHz, type 
OUT 254.0 ENTER. This control 
statement can be part of a pro- 
gram or entered at any time via 
the keyboard. 

As you might imagine, this 
adds a new measure of flex- 


utilized either mechanical or 
electronic switches to switch 
clock rates. The problem was 
that the switch often occurred 
at some random point in a 
microprocessor cycle, leaving 
the processor in limbo so that by 
the time the rate settled at a new 
frequency, the microprocessor 
was lobotomized. The user then 
had to power-down and repow- 
er-up to sync everything again. 

None of that is necessary 
with the Clock Control Board 
since it is controlled by an OUT 
instruction and, hence, always 
occurs between microprocessor 
instructions. Thus, you have 



circuit. 

Assembly consisted of cut- 
ting the hookup wire to appro- 
priate lengths as described in 
the manual and soldering them 
first to the clock control board 
and then to the appropriate 
points on the motherboard. 
Finally, a jumper connection 
was made between Z43, pin Z, 
and Z56, pin 14. The trace from 


ibility in programming control. 
Cassette tapes can be read or 
written at either clock rate, giv- 
ing effective baud rates of 500 or 
750. Computer graphics and 
computational time can be cut 
by one-third as well, all under 
complete computer control. 
This is truly elegant design and 
engineering! 

Previous clock modifications 


clock rate control under com- 
plete computer control without 
cutting any more holes in the 
computer case. 

As you may have surmised, I 
am delighted by the TRS-80 
Clock Control Board. It is a 
simple-to-install, easy-to-under- 
stand kit that does what it 
claims to do. I recommend it 
highly . . . good job, Bill! ■ 


212 Microcomputing , October 1980 


NOW PRINT APPLE® 



$ 795 . 


HIRES - GRAPHICS NORMAL, 
INVERSE, IN 2 SIZES. 

TX-80 PRINTER 

by 


THE TX-80 MATRIX PRINTER ^ GRAFTRAX 


SPEED: 58 LPM, 125 CPS 


INTERFACES: Parallel standard IEEE 488 and serial RS-232 
optional, (Apple type parallel card and 
cable s 99.) 

CHARACTER SET: Full 96 Character ASCII Set (upper and 
lower case with expanded print). 

PRINT HEAD: 100 x 10 6 character life expectancy. 

GRAFTRAX OPTION* full dot addressable graphics (480 dots/ 
line) with Automatic print head protec- 
tion on dense pictures plus form feed 
and skip over perforation. 

FREE! APPLESOFT- WARE for graphics dump included 


* UPDATE EARUER TX-80’s TO GRAPHICS for $99. 

Masterchrage S Visa O.K. 

DEALER INQUIRIES INVITED ^ g7 

Computer Comer of New Jersey 

439 Rt 23, Pompton Plains, N.J. 07444 (201 ) 835-7080 

PRICES SUBJECT TO CHANGE 



You may love Wayne Green . . . you may hate him . . . but you 
have to admit he has vision. And that vision created 80 
Microcomputing— the only major publication devoted to 
today’s largest selling computer. 

80 Microcomputing is not just any computing magazine . . . it’s 
a magazine written for the users of Tandy’s TRS-80*, a maga- 
zine written to tell you the truth about it. Wayne Green has 
never been one to mince words and so 80 Microcomputing tells 
you the good things about the TRS-80* and the not so good. 80 
Microcomputing also has reviews of compatible equipment, 
programs and applications, plus users reactions that let you 
know how the TRS-80* works and what it can do. Also you can 
save hundreds of dollars on equipment by buying what you 
know is right. And of course, 80 Microcomputing has the 
editorial fireworks from Wayne that the industry has come to 
expect. 

So subscribe to 80 Microcomputing . . . the industry’s only ma- 
jor publication for your computer ... the TRS-80*. 

Circle 60 on the Reader Service card for a subscription 
form ... or call use at 800-258-5473. 

‘TRS-80 is a trademark of Tandy ^ 60 


iX 291 



COMPUTER 
FORMS KIT 


EACH KIT CONTAINS: 

Samples, Prices, Order Form, 

4 Checks, 2 Statements, 2 Invoices, 
Programming Guides. 

We specialize in small quantities, low prices. 
500 CHECKS ONLY $29.95 




SEND COUPON, CIRCLE BINGO or 
PHONE TOLL FREE 
1 + 800 - 225-9540 


FAST SERVICE — It is our policy to ship within 6 working 
days following our receipt of your order. CODE 46 1 

Name 

Address 


State, Zip 

NEW ENGLAND BUSINESS SERVICE, INC. 
GROTON, MASS. 01450 


Reader Service index— page 241 


Microcomputing , October 1980 213 



Dealers: Listings are $15 per month in prepaid quarterly payments, or one yearly payment of 
$150, also prepaid Ads include 25 words describing your products and services plus your com- 
pany name, address and phone (No area codes or merchandise prices, please ) Call Marcia at 
603-924-7138 or write Kilobaud Microcomputing, Ad Department, Peterborough, NH 03458. 


Kingston, PA 


El Monte, CA 

Ohio Scientific specialist in the San Gabriel 
valley serving greater Los Angeles Full prod- 
uct line on display. Specializing in business 
computers In-house service. Custom pro- 
gramming. Terminals. Printers Open Mon- 
Sat, 9 AM-7 PM Computer & Video, 3380 
Flair Dr., Suite 207, El Monte, CA 91731, 
572-7292. 


San Jose, CA 

Bay area's newest computer store Featuring 
the new Texas Instruments Tl 99/4 home & 
business computer. Software for TRS-80, Ap- 
ple, PET, etc Magazines Hobbi-Tronics, 1378 
S. Bascom Ave., San Jose, CA 95128, 998-1103. 


Santa Barbara, CA 

Complete computer systems for business and 
personal use. Classes, seminars, word process- 
ing supplies, books, magazines. Computers 
Plus, 1827 State St., Santa Barbara, CA 93101, 
963-4542. 


N. Hollywood, CA 

Wholesale prices to dealers & computer club 
members! Anadex, Atari, Base-2, Centronics, 
Emako, Godbout, Hazeltine, Lobo, Microp- 
olis, MicroPro, NEC, Okidata, Paper Tiger, 
Soroc, Tarbell, Televideo, Tl, Vector Graphic, 
Zenith & others. Patio Computer Sales Co., 
5437 Laurel Canyon Bl.,#208, N. Hollywood, 
CA 91607, 762-0020. 


For Sale: One Gimix computer nearly new, 
excellent condition. 6800 CPU card, 16K 
static memory card (Gimix). $800. Paul 
Lamar, 123 S. Juanita St., Redondo Beach, 
CA 90277. Work 213-374-1673, home 213- 
316-8351. 


For Sale: Smoke Signal Broadcasting disk 
controller card, with the following software: 
on 8” floppy disk, text editing system, disk 
file BASIC and mnemonic assembler. $250. 
Paul Lamar, 123 S. Juanita St., Redondo 
Beach, CA 90277. Work 213-374-1673, 
home 213-316-8351. 


Trade ham station for AIM 65. Also trading 
O.S.I. programs, etc. Write to Henry A. 
Etchason, Box 147, Sage, AR 72573. 


TRS-80 Mod. I, Level I with Expansion In- 
terface & 10 key, $1000. IBM Selectric 71-3 
I/O with TRS-80 print port interface, $650. 
Will sell both for $1400. D. Bowie, Box 
3453, San Francisco, CA 94119, 415-861- 
6883. 


For Sale: S. D. Expandoram, S-100, 16K 
with 4115s, assembled, never used. $175 or 
best offer. Call 701-968-4525, or write T. 
Cartwright, Box 301, Cando, ND 58324. 


Sarasota, FL 

Dynabyte computer systems, Hazeltine and 
NEC, Word Star, Structured Systems account- 
ing. Consulting, training, sales, service. 

Glisco, Inc., 4001 Roberts Point Rd., Sarasota, 
FL 33581, .349-0200. 


Aurora, IL 

Microcomputer systems for home or 
business; peripherals, software, books & 
magazines Apple, Hewlett-Packard, North 
Star, Cromemco systems. IDS-440G printer 
w/Apple graphics. New HP-85 & HP calcula- 
tors Farnsworth Computer Center, 1891 N. 
Farnsworth Ave., Aurora, IL 60505, 851-3888. 


Chicago, IL 

Brand new lowest prices, never undersold, 
postpaid in USA — Teletype 43 keyboard 
printers, Okidata & Integral Data printers, 
SS-50 bus computers, peripherals & business 
software. Data Mart, 914 East Waverly Street, 
Arlington Heights, IL 60004, 390-8525. 


Garden City, Ml 

Complete systems for business, professional 
and personal applications. Custom program- 
ming available. Apple II, North Star, Vector 
Graphic and other lines of microcomputers, 
software, books, components. Computer 
Center, 28251 Ford Rd., Garden City, Ml 
48135, 422-2570. 


For Sale: Back issues of Byte, all my begin- 
ning computer books and cassette learning 
tapes, assorted electronic books, etc. Send 
SASE for list to Don Hastings, Box 366, 
Hemingway, SC 29554. 


For Sale: Heath H8 w/16K, H8-5. H9 w/ 
GRAFIX and page erase. Heath cassette re- 
corder, software, complete documentation. 
Complete system, up and running, $650. 
Dave Leupp, 852 Westover Terr., Whiteman 
AFB, MO 65305, 816-563-2208. 


For Sale: TRS-80, Level II, 16K w/ many ex- 
tras, $600. Mint condition. Kilobaud issues 
#1 to present. Best offer. Larry Guerrera, 
Box 933, Woodside, NY 11377, 212-545- 
4917. 


For Sale: Eaton LRC 7000+ 64 char, print- 
er, $250. Radio Shack Quick Printer II, 32 
char. (Cat. No. 26-1155), $150. Send certi- 
fied check or money order: Wm. R. Spencer, 
Jr., 5421 Grandin Rd. Ext., Salem, VA 
24153. 


Wanted: 610 expansion board for OSI C1P. 
With or without RAM chips. Send price and 
description to Gary Rinehart, RR#3, North 
Manchester, IN 46962. 


Westland, Ml 

Integrated circuits, TTL, CMOS, linear Many 
hard to find "S" and "LS" types. Resistors, 
capacitors, diodes, 1C sockets and many other 
items Westland Electronics, 34245 Ford Rd., 
Westland, Ml 48185, 728-0650. 


Hannibal, MO 

Ohio Scientific products, modifications, ser- 
vice, software 8" disk for Clp, C4p Process 
control specialist E&l Technical Service, 5300 
Paris Gravel Road, Hannibal, MO 63401, 248- 
0084. 


St. Louis, MO 

Experimenters' Paradise. Electronic and 
mechanical components Computer People, 
Audio People, Hams, Robot Builders, Experi- 
menters Open six days a week Gateway Elec- 
tronics Corp., 8123-25 Page Blvd., St. Louis, 
MO 63130, 427-6116. 


Portland, OR 

Ohio Scientific specialists for business and 
personal computers. Local service. Terminals, 
printers, custom programming. Full OSI prod- 
uct line on display! 10 AM to 6 PM M-F Fial 
Computer, 11266 SE 21st Ave., Milwaukie, OR 
97222, 654-9574. 


For Sale— SWTP MP-16, 16K memory 
board, excellent condition. Paid over $450. 
Will sell for $299 or make offer. Call 702- 
453-4775 after 5 pm. 


For Sale: SWTP 6800 w/ 32K, SSB dual disk 
drive, CT-64 & VM-64, Percom cassette in- 
terface, manual and software and extra serial 
and parallel cards. $3350. Will separate. 
John Rogers, 312-549-0008 after 5 pm. 


For Sale: Unused Polymorphic System 8813 
with 32K RAM memory with floppy-disk 
drives, printer interface and Abern-Sopher 
Multiwriter III. System has Canadian import 
tax paid. Offers for complete system to: 
Bishop Management, #8—825 McBride 
Blvd., New Westminster, B.C., Canada, 
V3L 5B5. 604-525-8148. 


For Sale: MSI-6800 microcomputer with 
16K + RAM, 8K PROM board, two serial 
ports, two cassette ports (J.P.C.), new Per- 
com 5” disk with controller card, lots of disk 
software. This system has been used very lit- 
tle, $1700. KIM-1 with enclosure and all 
manuals, $110. Mcca-Bcta high-speed cas- 
sette recorder, 9600 baud, RS-232, $325. 
Micon 32 char, terminal, 300 baud, RS-232, 
$325. Everything for $2300 and you ship. 
Bill Pinkerton, 129-2nd Ave., Indialantic, 
FL 32903. 305-725-7016. 


PET 2nd cassette ($60) + more PET equip. 
Lots of software + manuals. For sale 
(cheap!) or trade. Send SASE to D. Coles, 
3713 Bay To Bay, Tampa, FL 33609. 


Wanted: OSI b&w video board #540. If you 
upgraded to color you have one gathering 
dust. Mike Schroeder, 1251 Minnesota Ave., 
Detroit Lakes, MN 56501. 


Sell: Heath system complete and assembled 
H8, H9, 40K memory, H17 disk, 2 drives, 
DEC writer, 2 cassette recorders. All pro- 
grams documentation and disks. Only 
$3500. Every item below kit price. E. Mc- 
Cormick, 8 Monmouth Shire Lane, Spring 
Lake, NJ 07762. 201^49-4093 after 7:00pm. 


We support Level II and Model II. Books, 
magazines, programs, parts, accessories, 
peripherals, free literature, free seminars, 
cassettes, floppies, filters, transformers, caps, 
chips, CRTs Artco Electronics, 302 Wyoming 
Ave., Kingston, PA 18704, 287-1014. 


Sara, Mexico 

Learn how to utilize and program the Z-80 
microprocessor to maintain your company's 
records in top shape This technique has just 
been introduced to Mexico. Courses, applica- 
tions, maintenance, service Digitales, S.A. de 
C.V. Sara 4612, Mexico 14, D.F., 5-17-41-59. 


MICRO 

QUIZ 


from page 19 


Answer: 3 
J = 1 => X(7) = 1 
J = 2 => X(l) = 2 
J = 3 => X(7) = 3 
J =4 => X(2) = 4 
J = 5 => X(2) = 5 
J = 6 => X(l) = 6 

(The next quiz question tests 
your knowledge of digital elec- 
tronics.) 


For Sale: Xitan Z-80 system. Mainframe, 
ZPU, SMB, VDB, 48K RAM, 16R ROM 
(12K BASIC in ROM), keyboard, manuals, 
software. Complete system $1800. Terry 
Young, 4 Aiken St., Derry, NH 03038, 
603-434-0257. 


Wanted: Synertek KTM-2 keyboard and/or 
Trendcom 200 printer. In return I will 
fabricate an equal value of prototype PC 
boards. R. Hegel, 7332 Portland Ave., Rich- 
field, MN 55423. 


TRS-80 Quick Printer-II plus nine rolls 
paper and cables for keyboard and expan- 
sion interface, $180. Like new, list over 
$240. G. Atkinson, Box 40387, San Fran- 
cisco, CA 94140, 415-647-9122. 


Diablo Hytype 1 Model 1200. Best of the 
“daisy wheel” printers. Brand new units 
w/pin feed friction platen & print wheel. In- 
terface for Apple, TRS-80 & CP/M systems, 
maintenance manual and additional inter- 
face info available. There is no better buy 
anywhere. After 6 PM. Scott Priester, 211 
White Water Ct., Greer, SC 29651 , 803-268- 
0678. 


CLAfllFIEDS 

Classified advertisements are intended for use by persons desiring to buy, sell or 
trade used computer equipment. No commercial ads are accepted. 

Two sizes of ads are available. The $5 box allows up to 5 lines of about 35 charac- 
ters per line, including spaces and punctuation. The $10 box allows up to 10 lines. 
Minimize use of capital letters to save space. No special layouts allowed. Payment is 
required in advance with ad copy. We cannot bill or accept credit. 

Advertising text and payment must reach us 60 days in advance of publication 
(i.e., copy for March issue, mailed in February, must be here by Jan. 1). The publisher 
reserves the right to refuse questionable or inapplicable advertisements. Mail copy 
with payment to: Classifieds, Kilobaud Microcomputing, Peterborough NH 03458 
Do not include any other material with your ad as it may be delayed. 


214 Microcomputing, October 1980 



attention 
Dealers 



Make 
Money. . . 
Sell 


kilobaud 


MICROCOMPUTING 


T.M. 


Selling Kilobaud MICROCOMPUTING, the most 
complete journal of microcomputing, brings the 
computer enthusiast through your door. Once he’s 
in your store, you can sell him anything. 

For information on selling Kilobaud MICROCOM 
PUTING, call 603-924-7296 and speak with Ginnie 
Boudrieau, our bulk sales manager, or write to her 
at Kilobaud Microcomputing, 80 Pine Street, Peter- 
borough, NH 03458. 

Our dealers are telling us that Kilobaud MICRO 
COMPUTING is the hottest-selling computer 
magazine on the newsstand, so call today and join 
the ranks of dealers who make money with KM. 


kilobaud 


MICROCOMPUTING™ 

80 Pine Street, Peterborough NH 03458 


TEXAS COMPUTER SYSTEMS 

Radio /hack 

Authorized Sales Center, OFFERS 328 

LOWEST PRICES „ 


C OMPUTER S 

fldPl II K4K Ask about the discounts/availability of the new Model 

A Model III, Pocket Computer, Videotex, and other ... rcon 

$3349 items, and our current price list. LCVCl II $680 

LIMITED TIME ONLY. Model II 64K $3349 . Model I 16K Level II w/keypad $680 . Model I 4K Level II $545 
Model I 4K Level I $425 Expansion Interface no memory $250 We strive to offer the lowest possible price to 
you . Programs 12% off list. CALL US. 

NEW single/DOUBLE DENSITY Modification for the Model I Using our 40 track anti-crunch disk drives and 
this kit. 400K is available on the 2-drive system! Mix/copy single and DOUBLE DENSITY at the same time for 
complete compatability. Can use Flippy disks for greater savings By Percom $209 Disk Drives $349 each 
SAVE $70. Our 16K Memory kit $79 each with instructions. 

Expand your Level I 4K to Level II 16K (when converting to disks) for as low as $129 CALL FOR DETAILS. 

FOR 8" CP/M systems-Osborne General Ledger $49 with multiple profit centers $99 A/R-A/P $49 , Pay- 
roll $49 All three for $100. Three w / multiple profit G/L $150 Support limited to copies and published errata 
information. Configured for Soroc and similar terminals. Manuals $20 each 

★ No taxes on out-of-state shipments. Texas res. Add 5%. 

★ All merchandise is new. checked and guaranteed by manufacturer 

★ Payment: Money Order. Cashier's Check, Certified Check Personal Checks require 3 weeks to clear 
VISA. MASTERCHARGE-Add 3%. 

★ Prices subject to change at any time. 

★ Delivery of merchandise is subject to availability 

★ UPS prepaid insured delivery: $1-5100. $5; $101-$500, $7. $501 up. 1.5% of order Model II must be 
shipped by truck. Rate Exception: furniture and some large items 

if Texas Residents 915-597-0673 

TCS, 106 East 10th. Brady, TX 76825. 800-351-1473 

■‘ —wi smirk* 


IN STOCK FOR IMMEDIATE SHIPMENT 

TRS-80* 


16K MEMORY KITS $49.95 

41 16 s 6 MONTH WARRANTY INSTRUCTIONS INCLUDED | 

DISK DRIVES 

PERCOM TFD-1 OO $325 
PERCOM TFD- 200 $595 
CCI-lOO $305 
CCI-200 $495 

2 DRIVE CABLE S24.95 4 DRIVE CABLE $34.95 

PRINTERS $695 

MICROTEK MT80P BI-DIRECTIONAL 
1 25 CPS UPPER & LOWER CASE 

1 YEAR WARRANTY 

CABLE — $24.95 

DISKETTES 

MEMOREX OR BASF 10/826.50 

YOUR SATISFACTION GUARANTEED OR FULL REFUND 

MICROCOMPUTER SERVICES CORPORATION! 

7314 MATTHEWS-MINT HILL RD. CHARLOTTE, NC 28212 [ 

^344 


‘TRADEMARK TANDY/RADIO SHACK CORP. 
PERCOM TM PERCOM DATA CCITMCPUIND. 


704 - 545-0826 


v* Reader Service index— page 241 


Microcomputing, October 1980 215 






kb microcomputing book nook 


MICRCK30MPUTING 



• 40 COMPUTER GAMES— BK7381 — Forty games in all in nine 
different categories. Games for large and small systems, and 
even a section on calculator games. Many versions of BASIC 
used and a wide variety of systems represented. A must for the 
serious computer gamesman. $7.95* 


• UNDERSTANDING AND PROGRAMMING MICROCOMPUTERS -BK7382-A valuable 
addition to your computing library. This two part text includes the best articles that have ap- 
peared in 73 and Kilobaud Microcomputing magazines on the hardware and software 
aspects of the new microcomputing hobby. Well known authors and well structured text 
helps the reader get involved in America’s fastest growing hobby. $10.95* 



INTRODUCTORY 


• HOBBY COMPUTERS ARE HERE! — BK7322— If you (or a friend) want to 
come up to speed on how computers work . . . hardware and software . . . 
this is an excellent book. It starts with the fundamentals and explains the 
circuits, and the basics of programming. This book has the highest recom- 
mendations as a teaching aid for newcomers. $4.95.* 

• THE NEW HOBBY COMPUTERS— BK7340— This book takes it from 
where “HOBBY COMPUTERS ARE HERE!” leaves off, with chapters on 
Large Scale Integration, how to choose a microprocessor chip, an introduc- 
tion to programming, low cost I/O for a computer, computer arithmetic, 
checking memory boards . . . and much, much more! Don’t miss this tremen- 
dous value! Only $4.95.* 

INTRODUCTION TO MICROCOMPUTERS (VOL 0-///) 



• AN INTRODUCTION TO MICROCOMPUTERS, VOL. 0- 

BK1 130 — The Beginner’s Book- Written for readers who know 
nothing about computers -for those who have an interest in 
how to use computers — and for everyone else who must live 
with computers and should know a little about them. The first in 
a series of 4 volumes, this book will explain how computers 
work and what they can do. Computers have become an in- 
tegral part of life and society. During any given day you are af- 
fected by computers, so start learning more about them with 
Volume 0. $7.95.* 


Mkt<X° ,n P atc ' 


Tools 

Techniques 

Electronics 


• VOL. I - BK1030-2nd Edition completely revised. Dedicated 
to the basic concepts of microcomputers and hardware theory. 
The purpose of Volume I is to give you a thorough understand- 
ing of what microcomputers are. From basic concepts (which 
are covered in detail), Volume I builds the necessary compo- 
nents of a microcomputer system. This book highlights the dif- 
ference between minicomputers and microcomputers. $12.50.* 

• VOL. II — BK1040 (with binder) — $30.00* —Contains descrip- 
tions of individual microprocessors and support devices used 
only with the parent microprocessor. Volume II describes all 
available chips. 

• VOL. Ill — BK1 133 (with binder) -$20.00.* Contains descrip- 
tions of all support devices that can be used with any micropro- 
cessor. 



• HOW TO BUILD A MICROCOMPUTER - AND REALLY UNDERSTAND IT- BK7325 - by 
I Sam Creason. The electronics hobbyist who wants to build his own microcomputer 

system now has a practical “How-To” guidebook. This book is a combination technical 
' manual and programming guide that takes the hobbyist step-by-step through the design, 
construction, testing and debugging of a complete microcomputer system. Must reading 
for anyone desiring a true understanding of small computer systems. $9.95.* 

• TOOLS & TECHNIQUES FOR ELECTRONICS- BK7348- by A. A. Wicks is an easy-to- 
understand book written for the beginning kit builder as well as the experienced hob- 
byist. It has numerous pictures and descriptions of the safe and correct ways to use 
basic and specialized tools for electronic projects as well as specialized metal working 
tools and the chemical aids which are used in repair shops. $4.95.* 


"Use the order card in the back ot this magazine or itemize your order on a separate piece of paper and mail to Kilobaud Microcomputing Book 
Department • Peterborough NH 03458. Be sure to include check or detailed credit card information. No C.O.D. orders accepted. All orders add $1.00 
handling. Please allow 4-6 weeks for delivery. Questions regarding your order? Please write to Customer Service at the above address. 


FOR TOLL FREE ORDERING CALL 1-800-258-5473 





kb microcomputing book nook 





FOR TOLL FREE ORDERING CALL 1-800-258-5473 


SPECIAL INTERESTS 


• TRS-80 DISK AND OTHER MYSTERIES- BK1181 - by Har- 
vard C. Pennington. This is the definitive work on the TRS-80 
disk system. It is full of detailed “How to” information with ex- 
amples, samples and in-depth explanations suitable for begin- 
ners and professionals alike. The recovery of one lost file is 
worth the price alone. $22.50.* 

• INTRODUCTION TO TRS-80 GRAPHICS- BK1180- by Don 
Inman. Dissatisfied with your Level I or Level II manual’s 
coverage of graphics capabilities? This well-structured book 
(suitable for classroom use) is ideal for those who want to use 
all the graphics capabilities built into the TRS-80. A tutorial 
method is used with many demonstrations. It is based on the 
Level I, but all material is suitable for Level II use. $8.95.* 

• MICROPROCESSOR INTERFACING TECHNIQUES- BK1037 
-by Austin Lesea & Rodnay Zaks will teach you how to inter- 
connect a complete system and interface it to all the usual 
peripherals. It covers hardware and software skills and tech- 
niques, including the use and design of model buses such as 
the IEEE 488 orSIOO. $15.95.* 

• MICROPROCESSOR LEXICON -ACRONYMS AND DEFINITIONS- BK1137-Compiled by the staff of SYBEX is a convenient 
reference in pocket size format. Sections include acronyms and definitions, part numbers and their definitions, S-100 signals, 
RS232 signals, IEEE 499 signals, microcomputer and microprocessors, JETDS summary (military) and a code conversion table. 
$2.95.* 

• MICROPROCESSORS FROM CHIPS TO SYSTEMS - BK1036 — by Rodnay Zaks is a complete and detailed introduction to 
microprocessors and microcomputer systems. No preliminary knowledge of computers or microprocessors is required to read 
this book, although a basic engineering knowledge is naturally an advantage. Intended for all wishing to understand the con- 
cepts, techniques and components of microprocessors in a short time. $10.95.* 


MONEYMAKING 


• HOW TO MAKE MONEY WITH COMPUTERS - BK1003- In 
10 information-packed chapters, Jerry Felsen describes more 
than 30 computer-related, money-making, high profit, low 
capital investment opportunities. $15.00.* 

• HOW TO SELL ANYTHING TO ANYBODY - BK7306 - Ac- 
cording to The Guinness Book of World Records, the author, 
Joe Girard, is “the world’s greatest salesman.” This book 
reveals how he made a fortune — and how you can, too. $2.25.* 


• FREELANCE SOFTWARE PUBLISHING - BK1 179- by B. J. 
Korites. “This book is about money and how to make it by 
writing and selling computer programs,” (author’s foreword). If 
you have the skills to write a saleable program, you now need to 
acquire the skills to sell that program. This compact book com- 
prehensively covers the entire publishing process and many 
aspects of software salesmanship. $14.95.* 

• THE INCREDIBLE SECRET MONEY MACHINE- BK1 178-by Don Lancaster. A dif- 
ferent kind of “cookbook” from Don Lancaster. Want to slash taxes? Get free vacations? 
Win at investments? Make money from something that you like to do? You’ll find this 
book essential to give you the key insider details of what is really involved in starting up 
your own money machine. $5.95.* 


BUSINESS 


*Use the order card in the back of this magazine or itemize your order on a separate piece of paper and mail to Kilobaud Microcomputing Book 
Department • Peterborough NH 03458. Be sure to include check or detailed credit card information. No C.O.D. orders accepted. All orders add $1.00 
handling. Please allow 4-6 weeks for delivery. Questions regarding your order? Please write to Customer Service at the above address. 


• PAYROLL WITH COST ACCOUNTING - IN BASIC- BK1001 - by L. Poole & M. 
Borchers, induces program listings with remarks, descriptions, discussions of 
the principle behind each program, file layouts, and a complete user’s manual with 
step-by-step instructions, flowcharts, and simple reports and CRT displays. Pay- 
roll and cost accounting features include separate payrolls for up to 10 com- 
panies, time-tested interactive data entry, easy correction of data entry errors, job 
costing (labor of distribution), check printing with full deduction and pay detail, 
and 16 different printed reports, including W-2 and 941 (in CBASIC). $20.00.* 

• SOME COMMON BASIC PROGRAMS— BK1053— published by Adam Osborne & 
Associates, Inc. Perfect for non-technical computerists requiring ready-to-use pro- 
grams. Business programs, plus miscellaneous programs. Invaluable for the user 
who is not an experienced programmer. All will operate in the stand-alone mode. 
$12.50 paperback.* 

• PIMS: PERSONAL INFORMATION MANAGEMENT SYSTEM - BK1009- Learn 
how to unleash the power of a personal computer for your own benefit in this 
ready-to-use data-base management program. $11.95.* 




PROGRAMMING & COOK BOOKS 


CMOS 

COOKBOm 


8080 / 8080A 


kb microcomputing book nook 


-Z80- 


e >rA 

V** INSIDE LEVEL II — BK1 183 — For machine language program- 
mers! This is a comprehensive reference guide to the Level " 
ROMs, allowing easy utilization of the sophisticated routines 
they contain. It concisely explains set-ups, calling sequences, 
variable passage and I/O routines. Part II presents an entirely 
new composite program structure which unloads under the 
SYSTEM command and executes in both BASIC and machine 
code with the speed and efficiency of a compiler. Special con- 
sideration is given to disk systems. $15.95.* 

• PROGRAMMING THE Z-80 - BK1 122 - by Rodnay Zaks. Here 
is assembly language programming for the Z-80 presented as a 
progressive, step-by-step course. This book is both an educa- 
tional text and a self-contained reference book, useful to both 
the beginning and the experienced programmer who wish to 
learn about the Z-80. Exercises to test the reader are included. 
$14.95.* 

• Z-80 ASSEMBLY LANGUAGE PROGRAMMING - BK1 1 77 - 

by Lance A. Leventhal. This book thoroughly covers the Z80 in- 
struction set, abounding in simple programming examples 
which illustrate software development concepts and actual 
assembly language usage. Features include Z80 I/O devices 
and interfacing methods, assembler conventions, and compari- 
sons with 8080A/8085 instruction sets and interrupt structure. 
$12.50.* 

• Z-80 SOFTWARE GOURMET GUIDE AND COOKBOOK- 

BK1045 — by Nat Wadsworth. Scelbi’s newest cookbook! This 
book contains a complete description of the powerful Z-80 in- 
struction set and a wide variety of programming information. 
Use the author’s ingredients including routines, subroutines 
and short programs, choose a time-tested recipe and start 
cooking! $15.95.* 

-6502- 

• PROGRAMMING THE 6502 (Second Edition)- BK1005- 
Rodnay Zaks has designed a self-contained text to learn pro- 
gramming, using the 6502. It can be used by a person who has 
never programmed before, and should be of value to anyone us- 
ing the 6502. The many exercises will allow you to test yourself 
and practice the concepts presented. $12.95.* 

• 6502 APPLICATIONS BOOK - BK1006 - Rodnay Zaks 
presents practical-application techniques for the 6502 micro- 
processor, assuming an elementary knowledge of 
microprocessor programming. You will build and design your 
own domestic-use systems and peripherals. Self-test exercises 
included. $12.95.* 

• 6502 ASSEMBLY LANGUAGE PROGRAMMING - BK1 176 — 

by Lance A. Leventhal. This book provides comprehensive 
coverage of the 6502 microprocessor assembly language. 
Leventhal covers over 80 programming examples from simple 
memory load loops to complete design projects. Features in- 
clude 6502 assembler conventions, input/output devices and in- 
terfacing methods, and programming the 6502 interrupt 
system. $12.50.* 

• 6502 SOFTWARE GOURMET GUIDE AND COOKBOOK - 

BK1055-by Robert Findley. This book introduces the BASIC 
language programmer into the realm of machine-language pro- 
gramming. The description of the 6502 structure and instruc- 
tion set, various routines, subroutines and programs are the in- 
gredients in this cookbook. “Recipes” are included to help you 
put together exactly the programs to suit your taste. $12.95.* 


• 8080A/8085 Assembly Language Programming— by Lance 
Leventhal— BK1004— Assembly language programming for the 
8080A/8085 is explained with a description of the functions of as- 
semblers and assembly instructions, and a discussion of basic 
software development concepts. Many fully debugged, practical 
programs are included as is a special section on structured pro- 
gramming. $12.50.* 

• 8080 PROGRAMMING FOR LOGIC DESIGN-BK1078-ldeal 

reference for an indepth understanding of the 8080 processor. 
Application-oriented and the 8080 is discussed in light of replac- 
ing conventional, hard-wired logic. Practical design considera- 
tions are provided for the implementation of an 8080-base con- 
trol system. $9.50.* 

• 8080 SOFTWARE GOURMET GUIDE AND COOKBOOK- 

BK1102 — If yu have been spending too much time developing 
simple routines for your 8080, try this new book by Scelbi Com- 
puting and Robert Findley. Describes sorting, searching, and 
many other routines for the 8080 user. $12.95.* 


-6800- 


• 6800 PROGRAMMING FOR LOGIC DESIGN— BK1077— Ori- 
ented toward the industrial user, this book describes the process 
by which conventional logic can be replaced by a 6800 
microprocessor. Provides practical information that allows an 
experimenter to design a complete micro control system from 
the “ground up.” $9.50.* 

• 6800 SOFTWARE GOURMET GUIDE AND COOKBOOK- 

BK1075-Like its culinary cousin, The 8080 Gourmet Guide, 
this book by Scelbi Computing and Robert Findley describes 
sorting, searching and other routines — this time for the 6800 
user. $12.95.* 


COOK BOOKS- 


• CMOS COOKBOOK- BK1011 —by Don Lancaster. Details 
the application of CMOS, the low power logic family suitable 
for most applications presently dominated by TTL. Required 
reading for every serious digital experimenter! $10.50.* 

• TVT COOKBOOK — BK1064 — by Don Lancaster. Describes 
the use of a standard television receiver as a microprocessor 
CRT terminal. Explains and describes character generation, 
cursor control and interface information in typical, easy-to- 
understand Lancaster style. $9.95.* 

• TTL COOKBOOK- BK1063 — by Donald Lancaster. Explains 
what TTL is, how it works, and how to use it. Discusses prac- 
tical applications, such as a digital counter and display 
system, events counter, electronic stopwatch, digital voltmeter 
and a digital tachometer. $9.50.* 

• MICROCOMPUTING CODING SHEETS Microcomputing's 

dozen or so programmers wouldn’t try to work without these 
handy scratch pads, which help prevent the little errors that can 
cost hours and hours of programming time. Available for 
programming is Assembly/Machine Language (PD1001), which 
has columns for address, instruction (3 bytes), source code 
(label, op code, operand) and comments; and for BASIC 
(PD1002) which is 72 columns wide. 50 sheets to a pad. $2.39.* 


*Use the order card in the back of this magazine or itemize your order on a separate piece of paper and mail to Kilobaud Microcomputing Book 
Department • Peterborough NH 03458. Be sure to include check or detailed credit card information. No C.O.D. orders accepted. All orders add $1.00 
handling. Please allow 4-6 weeks for delivery. Questions regarding your order? Please write to Customer Service at the above address. 

FOR TOLL FREE ORDERING CALL 1-800-258-5473 



kb microcomputing book nook 






BASIC AND PASCAL 


NEW REVISED EDITION 

• PROGRAMMING IN PASCAL— BK1 140— by Peter Grogono. The computer 
programming language PASCAL was the first language to embody in a 
coherent way the concepts of structured programming, which has been 
defined by Edsger Dijkstra and C.A.R. Hoare. As such, it is a landmark in the 
development of programming languages. PASCAL was developed by 
Niklaus Wirth in Zurich; it is derived from the language ALGOL 60 but is 
more powerful and easier to use. PASCAL is now widely accepted as a 
useful language that can be efficiently implemented, and as an excellent 
teaching tool. It does not assume knowledge of any other programming 
language; it is therefore suitable for an introductory course. $12.95/ 

• THE BASIC HANDBOOK— BK1 174— by David Lien. This book 
is unique. It is a virtual ENCYCLOPEDIA of BASIC. While not 
favoring one computer over another, it explains over 250 BASIC 
words, how to use them and alternate strategies. If a computer 
does not possess the capabilities of a needed or specified 
word, there are often ways to accomplish the same function by 
using another word or combination of words. That’s where the 
HANDBOOK comes in. It helps you get the most from your com- 
puter, be it a “bottom-of-the-line” micro or an oversized 
monster. $14.95.* 


• LEARNING LEVEL II — BK1 175 — by David Lien. Written 
especially for the TRS-80, this book concentrates on Level II 
BASIC, exploring every important BASIC language capability. 
Updates are included for those who have studied the Level I 
User’s Manual. Sections include: how to use the Editor, dual 
cassette operation, printers and peripheral devices, and the 
conversion of Level I programs to Level II. $15.95.* 


• BASIC NEW 2ND EDITION - BK1081 - by Bob Albrecht. Self-teaching guide to 
the computer language you will need to know for use with your microcomputer. 
This is one of the easiest ways to learn computer programming. $6.95.* 

• BASIC BASIC (2ND EDITION)- BK1026- by James S. Coan. 

This is a textbook which incorporates the learning of computer 
programming using the BASIC language with the teaching of 
mathematics. Over 100 sample programs illustrate the tech- 
niques of the BASIC language and every section is followed by 
practical problems. This second edition covers character string 
handling and the use of data files. $9.45.* 

• ADVANCED BASIC - BK1000 - Applications, including 
strings and files, coordinate geometry, area, sequences and 
series, simulation, graphing and games. $9.65*. 

• MY COMPUTER LIKES ME. . .WHEN I SPEAK BASIC- BK1039- An introduction to BASIC 
. . . simple enough for kids. If you want to teach BASIC to anyone quickly, this is the way to go. 

$3.95.* 

• SIXTY CHALLENGING PROBLEMS WITH BASIC SOLUTIONS (2nd Edition)- BK1073- by Donald 
Spencer, provides the serious student of BASIC programming with interesting problems and solu- 
tions. No knowledge of math above algebra required. Includes a number of game programs, as well as 
programs for financial interest, conversions and numeric manipulations. $6.95.* 


games: 


• WHAT TO DO AFTER YOU HIT RETURN - BK1071 - PCC’s 
first book of computer games ... 48 different computer games 
you can play in BASIC . . . programs, descriptions, many illus- 
trations. Lunar Landing, Hammurabi, King, Civel 2, Qubic 5, 
Taxman, Star Trek, Crash, Market, etc. $10.95.* 

• BASIC COMPUTER GAMES- BK1074-Okay, so once you 
get your computer and are running in BASIC, then what? Then 
you need some programs in BASIC, that’s what. This book has 
101 games for you from very simple to real buggers. You get the 
games, a description of the games, the listing to put in your 
computer and a sample run to show you how they work. Fun. 
Any one game will be worth more than the price of the book for 
the fun you and your family will have with it. $7.50.* 

• MORE BASIC COMPUTER GAMES- BK1 182 -edited by 
\ David H. Ahl. More fun in BASIC! 84 new games from the people 

•A \who brought you BASIC Computer Games. Includes such 
favorites as Minotaur (battle the mythical beast) and Eliza 
(unload your troubles on the doctor at bargain rates). Complete 
with game description, listing and sample run. $7.50.* 


•Use the order card in the back of this magazine or itemize your order on a separate piece of paper and mail to Kilobaud Microcomputing Book Department 
• Peterborough NH 03458. Be sure to include check or detailed credit card information. No C.O.D. orders accepted. All orders add $1.00 handling. 
Please allow 4-6 weeks for delivery. Questions regarding your order? Please write to Customer Service at the above address. 


FOR TOLL FREE ORDERING CALL 1-800-258-5473 



Comes with Backgam- 
mon and Tic-Tac-Toe on 
tape with full documen- 
tation and program list- 
ing. Requires 9v. battery. 
Part No. IBEX $19.95 


APPLE II HOBBY/ 
PROTOTYPING CARD 

Part No. 7907 $1 4.95 


APPLE II 
PARALLEL 
INTERFACE 



Interfaces printers, syn- 
thesizers keyboards, and 
JBE A-D D-A Converter 
& Switches. This inter- 
face has 4 I/O ports 
with handshaking logic, 
2-6522 VIA’s and a 
74LS74 for timing. In- 
puts and outputs are 
TTL compatible. Part 
No. 79295K Complete 
Kit— $69.95 • Part No. 
79295A Assembled— 
$79.95 


REALTIME 
100,000 DAY 
CLOCK 

MT. HARDWARE Dou- 
ble the utility of your 
S-100 bus computer 
with a real-time clock 
that keeps time in 
100/iS increments for 
over 273 years. Pro- 
gram events for the en- 
tire period with real time 
interrupts...without de- 
railing the system. Main- 
tain a log of computer 
usage, time and date 
transaction printouts, 
call up lists. On-board 
battery backup. 
MHPX004— $349.00 


16K EPROM 



Uses 2708 EPROMS, 


memory speed selec- 
tion provided, ad- 
dressable anywhere in 
65K of memory, can 
be shadowed in 4K in- 
crements. Board only 
$24.95 part no. 
7902, with parts less 
EPROMs $49. 95 part 
no. 7902A. 


PET COMPUTER 



With 1 6K &. monitor— 
$895.00 • Dual Disk Drive 
-$1095.00 


OPTO-ISOLATED 
PARALLEL INPUT 
BOARD FOR 
APPLE II 



There are 8 inputs that 
can be driven from 
TTL logic or any 5 volt 
source. The circuit 
board can be plugged 
into any of the 8 sockets 
of your Apple II. It has 
a 16 pin socket for 
standard dip ribbon 
cable connection. 
Board only$1 5.00. Part 
No. 120, with parts 
$69.95. Part No. 120A. 


VIDEO TERMINAL 



1 6 lines, 64 columns • 
Upper and lower case 

• 5x7 dot matrix • Se- 
rial RS-232 in and out 
with TTL parallel 
keyboard input • On 
board baud rate 
generator 75, 110, 
150, 300, 600, & 
1200 jumper select- 
able • Memory 1024 
characters (7-21 L02) 

• Video processor chip 
SFF96364 by Necu- 
lonic • Control char- 
acters (CR, LF, 

t, 1, non destructive 
cursor, CS, home, CL 

• White characters on 
black background or 
vice-versa • With the 
addition of a key- 
board, video monitor 
or TV set with TV 
interface (part no. 
107A) and power 
supply this is a com- 
plete stand alone 
terminal • also S-100 
compatible • requires 
+ 16, & -16 VDC at 
100mA, and 8VDC at 
1 A. Part No. 1000A 
$199.95 kit. 


PARALLEL 
TRIAC OUTPUT 
BOARD FOR 
APPLE II 

This board has 8 triacs capable of switching 
110 volt 8 amp loads (660 watts per channel) or a 
total of 5280 watts. Board only $1 5.00 Part No. 
210, with parts $1 1 9.95 Part No. 21 OA 


APPLE lltt 
SERIAL I/O | 

INTERFACE 1 

Baud rate is continuously adjustable from 0 
to 30,000 • Plugs into any peripheral 
connector • Low current drain. RS-232 input 
and output • On board switch selectable 5 to 
8 data bits, 1 or 2 stop bits, and parity or no 
parity either odd or even • Jumper selectable 
address • SOFTWARE • Input and Output 
routine from monitor or BASIC to teletype or 
other serial printer • Program for using an 
Apple II for a video or an intelligent terminal. 
Also can output in correspondence code to 
interface with some selectrics. • Also 
watches DTR • Board only $1 5.00 Part No. 
2, with parts $42.00 Part No. 2A, assembled 
$62.00 Part No. 2C 


8K EPROM PICEON 



• Programs 2708’s address relocation of each 
4K of memory to any 4K boundary • Power on 
jump and reset jump option for "turnkey” 
systems and computers without a front panel 

• Program saver software in 1 2708 EPROM 
$25. Bare board $35 including custom coil, 
board with parts but no EPROMS $1 39. with 4 
EPROMS $1 79, with 8 EPROMS $219. 




SPINWRITER 
MODELS 5510 and 5520 





Features— EIA RS-232C/CCITT V.24 Inter- 
face Standard • 55 Characters Per Second 
Maximum Print Rate • Impeccable Print Quality 
(OCR Quality) • Microprocessor Electronics • 
High Resolution Plotting/Graphing • Lowest 
Operating Noise Level • Self-Test Printing • 
Operator Engineered Control Panel • Prints 
Original and up to Seven Copies • NEC Informa- 
tion Systems new Model 5510 Receive Only and 
Model 5520 Keyboard Send/Receive SPIN- 
WRITER terminals are microprocessor con- 
trolled serial, impact terminals designed for 
remote printing applications where impeccable 
print quality is required. Model 5510 RO, Part 
No. NECA30759 $2795.95 • Model 5520 
KSR, Part No. NECA30762 $3095.95 



D.C. HAYES MICROMODEM 



Fully S-100 bus compatible including 16-bit 
machines and 4 MHz processors. • Two soft- 
ware selectable Baud rates— 300 Baud and a 
jumper selectable speed from 45 to 300 Baud. 
(110 standard). Supports originate and answer 
modes. • Direct-connect Microcoupler. This 
FCC-registered device provides direct access 
into your local telephone system, with none of 
the losses or distortions associated with acous- 
tic couplers and without a telephone company 
supplied data access arrangement. • Auto- 
Answer/Auto-Call. The MICROMODEM 100 
can automatically answer the phone and receive 
input; it can also dial a number automatically. • 
Automatic Reset and Disconnect. • Software 
compatible with the D.C. Hayes Associates 
80-1 03 A Data Communications Adapter. 
Micromodem-DCHA32625— $379.95 


TIDMA 


Tape Interface Direct Memory Access • Record 
and play programs without bootstrap loader (no 
prom) has FSK encoder/decoder for direct con- 
nections to low cost recorder at 1 200 baud rate, 
and direct connections for inputs and outputs to 
a digital recorder at any baud rate • S-100 bus 
compatible • Board only $35.00 Part No. 112, 
with parts $110.00 Part No. 112A. 



SYSTEM MONITOR 


8080, 8085, or Z-80 System monitor for use 
with the TIDMA board. There is no need for 
the front panel. Complete with documentation 
$12.95. 



RS-232/TTY 


SERIAL I/O 


This board has two 
active circuits, one con- 
verts RS-232 to 20 mA, 
the other converts 20 
mA to RS-232. Re- 
quires +12 and -12 
volts. $9.95 Part No. 
600A Kit. 


Four Serial I/O RS-232 
ports. S-100 Bus, Soft- 
ware or jumper selectable 
baud rate (1 10, 300, 600, 
1200,2400,4800,9600, 
19.2K), on board Xtal baud 
rate generator, Address- 
ing, switch selectable. 
Parity or no parity (odd or 
even) switch selectable, 1 
or 2 stop bits, 5 to 8 
bits/character. Board only 
$29.95, Part No. 7908. 
With parts (kit) $199.95, 
Part No. 7908A. 


S-100 BUS 
ACTIVE TERMINATOR 



Board only $14.95 Part No. 900, with parts 
$24.95 Part No. 900A 




Send for FREE Catalog.. .a big self addressed envelope with 80<£ postage gets it fastest! 


Tn f|rHpr- Mention part no., description, and price. In USA shipping paid by us for orders accompanied by check or money 
lu UI uci . order. We accept C.O.D. orders (U.S. only) or a VISA or Master Charge no., expiration date, signature and phone 
no., shipping charges will be added. CA residents add 6.5°/o for tax. Outside USA add 1 5°/o for air mail postage 
and handling. Payment must be in U.S. dollars. Dealer inquiries invited. Prices subject to change without notice. 


Order Line: (408) 448-0800 


ELECTRONIC SYSTEMS Dept.KB,P.O. Box 21638, San Jose, CA USA 95151 




220 Microcomputing, October 1980 




HEX ENCODED KEYBOARD 


Four onboard LEDs indi- 
cate the HEX code gen- 
erated for each key 
depression. The board 
requires a single +5 
volt supply. Board only 
$15.00 Part No. HEX-3, 
with parts $49.95 Part 
No. HEX- 3A. 44 pin 
edge connector $4.00 
Part No. 44 P. 




T.V. 

TYPEWRITER 



• Stand alone TVT 

• 32 char/line, 16 
lines, modifications for 
64 char/line included 

• Parallel ASCII (TTL) 
input • Video output 

• 1 K on board memory 

• Output for computer 
controlled curser • 
Auto scroll • Non- 
destructive curser • 
Curser inputs: up, down, 
left, right, home, EQL, 
EOS • Scroll up, down 

• Requires +5 volts 
at 1.5 amps, and -1 2 
volts at 30 mA • All 
7400, TTL chips • 
Char. gen. 2513 • 
Upper case only • 
Board only $39.00 
Part No. 106, with 
parts $145.00 Part 
No. 1 06A 


44 BUS MOTHER 
BOARD 



Has provisions for ten 
44 pin (.156) connec- 
tors, spaced 3/4 of an 
inch apart. Pin 20 is 
connected to X, and 
22 is connected to Z 
for power and ground. 
All the other pins are 
connected in parallel. 
This board also has 
provisions for bypass 
capacitors. Board 
cost $15.00 Part No. 
102. Connectors 
$3.00 each Part No. 
44WP. 


UART & 
BAUD RATE 
GENERATOR 



• Converts serial to 
parallel and parallel to 
serial • Low cost on 
board baud rate gener- 
ator • Baud rates: 
110, 150, 300, 600, 
1200, and 2400 • 
Low power drain +5 
volts and -12 volts 
required • TTL com- 
patible • All characters 
contain a start bit. 5 
to 8 data bits, 1 or 2 
stop bits, and either 
odd or even parity. • All 
connections go to a 44 
pin gold plated edge 
connector • Board only 
$12.00 Part No. 101, 
with parts $35.00 Part 
No. 101 A. 44 pin edge 
connector $4.00 Part 
No. 44P 


RS-232/20mA 

INTERFACE 



This board has two 
passive, opto-isola- 
ted circuits. One con- 
verts RS-232 to 
20mA, the other con- 
verts 20mA to RS- 
232. All connections 
go to a 10 pin edge 
connector. Requires 
+12 and -12 volts. 
Board only $9.95, 
part no. 7901, with 
parts $14.95 Part 
No. 7901A. 


ASCII TO CORRESPONDENCE 
CODE CONVERTER 

This bidirectional board is a direct replace- 
ment for the board inside the Trendata 1000 
terminal. The on board connector provides 
RS-232 serial in and out. Sold only as an 
assembled and tested unit for $249.95. 
Part No. TA100QC 


ASCII KEYBOARD 

53 Keys popular ASR-33 format • Rugged 
G-10 P. C. Board • Tri-mode MOS encoding 

• Two-Key Rollover • MOS/DTL/TTL Compat- 
ible • Upper Case lockout • Data and Strobe 
inversion option • Three User Definable 
Keys • Low contact bounce • Selectable Par- 
ity • Custom Keycaps • George Risk Model 
753. Requires +5, -12 volts. $59.95 Kit. 

ASCII KEYBOARD 

TTL & DTL compatible • Full 67 key array 

• Full 12B character ASCII output • Positive 
logic with outputs resting low • Data Strobe 

• Five user-definable spare keys • Standard 
22 pin dual card edge connector • Requires 
+5VDC, 325 mA. Assembled & Tested. 
Cherry Pro Part No. P70-05AB. $119.95. 



A-to-D D-to-A CONVERTER 



Analog to Digital, 
Digital to Analog 
Converter, A-D con- 
version time 20us. 
D-A conversion 
5us. Uses include 
speech and music 
synthesizing and 
slow scan TV. Sin- 
gle power supply (5V), 8 Bits wide, latched I/O, 
strobe lines. Part No. 79287K Complete Kit 
$49.95 • Part No. 79287A Assembled $69.95 


SOLID STATE SWITCH 



Your computer can control power 
(120VAC) to your printer, lights, 
and other 120VAC appliances up 
to 720 watts (6AMPS at 1 20VAC1 
Input 3 to 15 VDC, 2-13 MA TTL 
compatible, isolation 1500V. Part No. 79000K 
1 Channel Kit $9.95 • Assm. $1 2.50 • Part No. 
79004K 4 Channel Kit $34.95 • Assm. $44.95. 



SUPER MODEM 


T.V. INTERFACE 



• Converts video to 
AM modulated RF. 
Channels 2 or 3. So 
powerful almost no 
tuning is required. On 
board regulated power 
supply makes this ex- 
tremely stable. Rated 
very highly in Doctor 
Dobbs' Journal. Recom- 
mended by Apple • 
Power required is 12 
volts AC C.T., or +5 
volts DC • Board only 
$7.60 part No. 107, 
with parts $1 3.50 Part 
No. 1 07A 


SOROC IQ 120 



Upper/ lower case dis- 
play • Numeric keypad 
& cursor keys • Pro- 
tected fields, Vs inten- 
sity display • RS 232 
interface & aux. port. 
IQ120— $799.95 • 
IQ140 Detachable key- 
board— $1 1 99.95 


RS-32/TTL 

INTERFACE 



TAPE 

INTERFACE 



• Converts a low cost 
tape recorder to a 
digital recorder • Works 
up to 1 200 baud • Dig- 
ital in and out are TTL- 
serial • Output of 
board connects to mic. 
in of recorder • Ear- 
phone of recorder con- 
nects to input on board 

• No coils • Requires 
+5 volts, low power 
drain • Board only 
$7.60 Part No. Ill, 
with parts $29. 95Part 
No. 1 1 1 A 


MODEM 



• Type 1 03 • Full or half 
duplex • Works up to 
300 baud • Originate 
or Answer# Serial TTL 
input and output • con- 
nect 8 O speaker and 
crystal mic. directly to 
board • Requires +5 
volts • Board only $7.60 
Part No. 1 09, with parts 
$29.95 Part No. 109 A. 



• Converts TTL to RS- 
232, and converts RS- 
232 to TTL • Two se- 
parate circuits • Re- 
quires -12 and +12 
volts • All connections 
go to a 10 pin edge 
connector, kit $9.95 Part 
Nq 232A1 OPin edge con- 
nector $3.00 part No. 
10P. 


With reg. keyboard 
MOD3 8K $1449.95 
M0D4 16 K $1495.95 
MOD5 32K $1699.95 
Without disk drive sub- 
tract $450.00. Add-on 
drives. $495.00. With 
101 key option add 
$134.95. With 117 key 
option add $1 79.95. 


Orignate, RS-232 and 
20 mA compatable, Full 
duplex, and half duplex, 
direct connect or a- 
coustic coupled, on 
board power supply, car- 
rier detect light, DB25 plug , 300 BAUD, Type 
1 03 compatable frequencies, Bare board Part 
No. 2000, $19,95, Kit Part No. 2000A, $99.95. 


DC POWER SUPPLY 

• Board supplies a regulated +5 
volts at 3 amps., +1 2, -1 2. and -5 
volts at 1 amp. • Power required is 
8 volts AC at 3 amps., and 24 volts 
AC C.T. at 1.5 amps. • Board only 
$12.50 Part No. 6085, with parts 
excluding transformers $42.50 
Part No. 6085A 




W To Order: 

Imm. 


Send for FREE Catalog.. .a big self addressed envelope with 80<C postage gets it fastest! 


TO Order* Mention part no., description, and price. In USA shipping paid by us for orders accompanied by check or money 
iu ui uui - on j er yy e accep t C.O.D. orders (U.S. only) or a VISA or Master Charge no., expiration date, signature and phone 
1 no., shipping charges will be added. CA residents add 6.5°/o for tax. Outside USA add 1 5°/o for air mail postage 
and handling. Payment must be in U.S. dollars. Dealer inquiries invited. Prices subject to change without notice. 


Order Line: (408) 448-0800 ^ 47 


ELECTRONIC SYSTEMS Dept.KB,P.O. Box 21638, San Jose, CA USA 95151 




iS Reader Service index— page 241 


Microcomputing, October 1980 221 








Terminals 



CompuMart has been selling com- 
puters by mail since 1971. Our thou- 
sands of satisfied customers rely on 
CompuMart for services not generally 
available from the others. Namely: 

• Product Selection/Each product ad- 
vertised by CompuMart has been eval- 
uated by our in-house staff for best 
price, performance, and supplier reli- 
ability 

• Return Privilege/After receipt of our 
products, you are protected by Compu 
Mart’s exclusive, 10-day return privi- 


ledge- good for all products except 
software. 

• Support/Our Customer Service Dept, 
and axpert technicians are always there 
to assist you by phone or at Compu- 
Mart’s outlets. Our knowledgeable 
phora sales force can provide you with 
detailed information and complete 
product specifications. 

• Phone Ordering/For added conveni- 
ence, CompuMart maintains a toll-free 
ordering number. 1-800-343-5504. 


Televideo 91 2C 

820 x 24— Lower case descenders. Teletype or 
telewriter keyboard. 110/220 VAC. 50 to 19.2K Baud 
Item entry pad. Great looking and no fan 
noise. 


Televideo 920C 

Similar to the TV 912 but has programmable 
function keys across top. 

Excellent for text editing. 


Call for Introductory 
Sale Prices 


We’ve got the following Lear Sieg- 
ler Terminals In Stock at prices 
too low to print— Call for quotes. 

ADM-3A Industries favorite dumb terminal for 
some very smart reasons. 

ADM-3A.+ New from Lear Siegler. CALL! 

ADM-31. The terminal that’s too smart to be con- 
sidered dumb. 



ADM-42. Available with keyboard semi- 
intelligent terminal offering tremendous user flexi- 
bility. The optional configurations 
are amazing. 


Call for details. 



with 


lO day free return 


HAZELTINE TERMINALS AT 
SPECTACULAR SAVINGS! 


Printers 


The Paper Tiger 
Printer From 
Integral Data 

Uses standard % inch roll 
paper and ribbon 
40 characters per line 
Speed: 40 characters 
per second 
UL approved 


737-3 (Serial Interface) 


Hazeltine 1410. 
Hazeltine 1420. 
Hazeltine 1500. 
Hazeltine 1510. 
Hazeltine 1520. 
Hazeltine 1552. 


List $850 CompuMart $749 

List $995 CompuMart $895 

List $1095 CompuMart $995 

List $1395 CompuMart $1325 

List $1585 CompuMart $1485 

List $1395 CompuMart $1295 


Call CompuMart for complete specs 
and quantity discounts. 


Calculators 


A CALCULATOR, A SYSTEM, A 
WHOLE NEW STANDARD. 



High resolution dot 
matrix impact printer 

IDS Paper Tiger Printer $995 

IDS Graphics Paper Tiger Printer $1 ,094 


NEW! From Integral Data. 

The IDS 460. 

We saw this new desktop printer at the NCC 80 
and when we saw its features: Correspondence 
quality printing, High-resolution graphics capa- 
bility, programmable print control functions, and 
automatic text justification — we knew that we had 
to offer this printer to our cost/features conscious 
customers $1,295 

The Omni 810 Printer from 

Texas Instruments 


CENTRONICS PRINTERS 

New! The incredible Model 737- Correspondence 
and Draft Quality Printing for Under $1,000. This is 
the first printer in its class to offer print quality 
suitable for text processing, plus the performance 
and application flexibility required for data pro- 
cessing. $995 

737-3 (Serial Interface) $1,045 

Tractor Feed Printer- Centronics’ Most Popular 
Model. Perfect for the needs of a small business 
sytesm. Recommended by Apple and Radio Shack. 

$1,079 

NEC The First Name in Letter 
Quality Printers. 

CompuMart offers beautiful print quality with NEC 
Spinwriter terminals. The Spinwriters, both KSR 
and RO versions, give unsurpassed hard copy 
output. CompuMart 


offers a complete 
range of NEC Spin- 
writers— Call our 
expert salesforce 


HEWLETT-PACKARD’S HP-41 C 


Tl Omni 820 Receive-Only (RO) Package. Includes 
machine-mounted paper tray and cable. A com- 
pressed print option and device forms control are 
standard features $2,155 



Tl Omni 820 Keyboard Send Receive (KSR) Package 
Comes with full ASCII Keyboard with numeric Key- 
pad and an EIA cable with autospeed select. $2,395 


HP-41C Calculator 


$288.00 



The System 

Memory Modules. For storing programs or up to 
2,000 lines of program memory $45.00 

“Extra Smart’’ Card Reader. Records programs and 

data back onto blank mag-cards $1 99.00 

The Printer. Upper and Lower case, High resolution 
plotting, Portable Thermal operation $355.00 

Application Modules $45.00 EACH 

Standard pac: 

Statistics, 

Math, 

Financial & 

Surveying 


Tl CALCULATORS • 



Monitors= 


EXCLUSIVE from CompuMart! 

^Special Offer. Zenith Color Video 
^ Monitor for $379! , 

The perfect monitor for Apple, Atari 
and Texas Instruments owners. 


NEW FROM SANYO — Four Great Moni- 
tors at Low CompuMart Prices. 

Sanyo’s new line of CRT data display monitors are 
specifically designed for the display of alpha- 
numeric or graphic data. 

9" Sanyo Monitor $169 

12" Sanyo Monitor $289 

12" Sanyo Monitor with green screen 5299 
13" Sanyo Color Display Monitor 5495 


The Tl Programable Calculator — 
Super Sale $229.00 


NOVATION CAT™ 

ACCOUSTIC MODEM 

• Answer Originate 

• 300 Baud 

Looks good, works great! 



• Bell 108 

• Low Profile Design 

$179.00 


Texas Instruments TI-99/4 Home 
Computer 

Save $300 on this 16-Bit computer with 
monitor 

TI-99/4 w/Monitor $889 

TI-99/4 w/o Monitor $725 





Brand New From Apple for the Apple II 

DOS 3.3 Convert disks to 16 sector format for 23% 


more storage and faster access $60 

Apple Plot. The perfect graphic complement for Visi- 
calc. $70 

Dow Jones News & Quotes $95 

Adventure $35 

DOS Tool Kit $75 

Apple Fortan $200 


New From Videx! — Video Term. 

80 column by 24 line 7x9 matrix — plug in compati- 
ble board for the Apple II. Price: $325 w/o graphics 


EPROM 

Options: Graphics EPROM $25 

Video Switch Plate, inserts between Apple II 
Video and vidoterm board $12 

NEW FROM MUSE FOR YOUR APPLE II 

The Voice $39.95 

Super Text $99.00 

Address Book $49.95 

S.S.M. Serial & Parallel Apple Interface $225 

NEW! ABT’s Numeric Key pad $1 10 

C.C.A. Data Management Program for 

Apple II $ 99 


New from Mountain Hardware — Expan- 
sion Accessories for Your Apple. 

Introl/X- 10 System $289 

Super Talker $299 

The Music System $545 

ROM plus board w / Keyboard filter $199 

New from Microsoft — The Z-80 Softcard $349 

Apple III Accessories 

Silentype Thermal Printer $525 

Disk III $545 

12" B&W Monitor $320 

Vinyl Carry Case $ 75 


Computers 


BUY-OF-THE-MONTH 
Apple III is Here 


Zenith Z-89 

The All-In-One-Computer 
This is the famous computer system which 
up no more space than a terminal alone. The 12" 
screen is beautiful and lends itself perfectly to 
professional applications thanks to its 25 lines of 
80 characters. We know of no other computer 
which gives you this many features at such a low 
price. 

Zenith 48K Z-89 Dual Port List $2,895 

CompuMart $2,695 


Got It! 


Apple III System Packages 

Apple III Information Analyst Option A. 

Includes: Apple III System with 96K RAM memory, 
Information analyst configuration package, 12" B&W 
monitor for Apple III $4,340 

Apple III Information Analyst Option B. 

Same as Option A plus: Disk 11 for Apple III $4,885 

Apple III Information Analyst Option C. 

Same as Option A plus: Disk 1 1 for Apple III, Silen- 


type Thermal Printer for Apple III $5,410 

Apple III Software 

Visicalc III $250 

Mail List Manager $250 

Business Basic $250 

PASCAL $250 

FORTRAN $250 

System Software & Manuals $250 


Z 19 Smart Video Terminal 

CompuMart 


List $995 


$895 






LUMIVIUUUm: 

Buy Direct from the largest Commodore dealer in 
the country, and the very first Commodore 
distributor in the U.S. Buy from the experts Buy 
from CompuMart. 

Commodore — We have everything 
that Commodore manufactures. In 
stock for Immediate Delivery! 

Call CompuMart now for low 
prices and special deals. 

ATARI 800 Personal Computer System. 

Comes with 800 Operators Manual, 16K RAM Mem 
ory module, 10K ROM Operating System, power 
supply, TV Switch Box. $1080 


We have a complete inventory of 
Apple computers, 
peripherals and software/ 


... J I I I II I I M 
U II I II 111 I II 

imViVnViY | 


Introducing the HP-85 
$3,145 

Hewlett-Packard’s Personal 
Computer for Industry. 

This extremely portable 
computer features ex- 
tended BASIC to solve your problems quickly and 
efficiently along with an advanced graphics sys- 
tem to enhance communication. 

NEW from Hewlett-Packard 

HP 82900-Series Flexible Disk Drives for the 

HP-85 

These 4 new Flexible Disk Drives provide fast on-line 
storage using flexible disks 

*HP 82901 M. Supplies approx. 540K bytes of on-line 
storage. $2,500 

*HP 82902M. Approx. 270K bytes of on-line storage. 

$1,500 

*HP 82901 S. Supplies an additional 540K bytes when 
connected to an HP 82901 M or an HP 82902M. 

$ 2,200 

*HP 829025. Supplies an additional 270K bytes when 
connected to an HP 82901 M or an HP 82902M. 

$1,300 

The Hewlett-Packard 7225A. High Ouality/Low Cost 
Graphics Plotter. $2,050 

Call our expert sales force for complete product 
specifications. 


\ 


Super Sale on Exidy Sorcerer 



List Price 

Sale! 

16K Sorcerer 

$1,295 

$999 

Parallel Data Cable 

$35 

$20 

Development PAC 

$99 

$85 

Word Processing PAC 

$199 

$169 

S-100 Expansion Unit 

$419 

$389 


s 


Lots of other Sorcerer accessories in stock at low 
prices — CALL! 


PERIPHERALS 

Atari 410 Program Recorder (FREE w/ purchase of 
Atari 800) 

Atari 810 Disk Drive 
New Dual Disk double density 
825 Printer (Centronics 737) 

RS232 Interface w/ Cable 
NEW! Light Pens 
Call for New Software 


ROCKWELL AIM 65 


The single board development system 
that’s perfect in the classroom or lab. 

Our AIM System includes: 4K AIM with BASIC 
interpreter assembler, Power Supply, Cassette 
recorder & Enclosure $799. 

4K AIM - 65 $499 

PL65 High Level Language $125 

Paper for the AIM (roll) $ 2.! 

Rockwell’s 4-slot Motherboard (SALE) $175 

CompuMart’s Microflex 65 System for your AIM 
Includes: Adapter Buffer Module w/ 4-slot module 
stack, 8K RAM module, 16K PROM/ROM module, 
Asynchronous communications Interface, & Power 
Supply $1,299 


Call or write for 
our complete 
Microflex 65 
brochure 



Phones 
open from 
8:30 a m to 5 30 
pm EST, Mon Fri 
PO.s accepted from 
D&B rated companies - 
shipment contingent upon receipt 
of signed purchase order • All prices 
are subject to change without notice • Most 
items in stock for immediate shipment— call 
tor delivery quotation • In the Ann Arbor area? Our 
retail store is open 1 1:00 a.m. to 7:00 p m. Tues.-Fri , 
10:00 a m to 5 00 p.m. Saturdays (closed Sun and Mon.) 


COMPUMART 

270 THIRD STREET DEPT 130 CAMBRIDGE, MA. 02142 



Member Computer Dealers Assoc^ 

v* Reader Service index— page 241 



We’ve had a reputation for dependability since 1971 





The Dual 
Processor Board 

uses an 8088 CPU for 
true 16 bit power with an 8 
bit bus, and an 8085 for compati- 
bility with CP/M and 8080 software. 
SPECIAL LOW PRICES: $295 unkit, $425 
assm (both operate at 5 MHz); $525 qualified 
under the high - reliability Certified System 
Component program ( with 5 MHz 8085 , 
6 MHz 8088). 


The Z80A 
CPU Board 

includes on-board 
fully maskable interrupts 
for interrupt- driven systems, pro- 
vision for adding upto8K of on-board EPROM, 
IEEE compatible 16/24 bit extended addressing, 
and much more. 4 MHz standard operation, but 
also works with 6 MHz Z80s. $225 unkit, $295 
assm $395 CSC. 


Throughput is the Only True Measure 

of Computer Performance. 

Want a 300% improvement in throughput compared to 2 MHz 
systems? IEEE-compatible CompuPro boards are designed from the 
ground up to operate at 6 MHz and beyond, dramatically increasing 
computing power and performance. Don’t settle for less . . . select 
high speed, high reliability S-100 products from CompuPro. 


HIGH SPEED S-100 MEMORY and MOTHERBOARDS 

RAM XX (with bank select AND extended addressing) is the perfect match for either CPU board — thanks to 
fully static operation, extremely low power consumption, and complete IEEE spec compatibility. All unkit and 
assembled memories work up to 5 MHz, while Certified System Component boards run up to 8 MHz and are 
guaranteed to work with 6 MHz Z80s. All CompuPro motherboards work up to 10 MHz. 


unkit assm CSC 

16K RAM XX-16 $349 $419 $519 

24K RAM XX-24 $479 $539 $649 

32K RAM XX-32 $649 $699 $799 

20 slot motherboard with edge connectors $174 $214 n/a 

12 slot motherboard with edge connectors $129 $169 n/a 

6 slot motherboard with edge connectors $89 $129 n/a 


SEE COMPUPRO PRODUCTS IN PERSON AT COMPUTER STORES WORLD- 
WIDE, OR WRITE US DIRECT IF THERE’S NO STORE IN YOUR AREA. 

TERMS: Cal res add tax. Allow 5% for shipping, excess refunded. VISA®/Mastercard® orders call (415) 562-0636, 24 
hours. Please include street address for UPS delivery. Sale prices good through cover month of magazine, other prices subject 
to change without notice. 



Bldg. 725, Oakland Airport, CA 94614 


224 Microcomputing, October 1980 



MCft- 


ELECTRONICS 

*>44 


INTEGRATED CIRCUITS 


P.0. Box 4430S 
Santa Clara, CA 95054 
Will calls: 2322 Walsh Ave. 
(408) 988-1640 

Same day shipment. First line parts only. Factory tested 
Guaranteed money back. Quality IC’s and other compo- 
nents at factory prices. 


7400TTL 

7 WON 
7402N 
7W4N 
7409N 
74 1 ON 
7414N 
7420N 
7427N 
7430N 
7442N 
7445N 
7447N 
744EN 
7450N 
7474N 
7475N 
7485N 
7489N 
7490N 
7492N 
7493N 
7495N 
741 00N 
74107N 
74121N 
741 23N 
74125N 
74 MSN 
741 SON 
74151N 
71154N 
74157N 
74161N 
74162N 
74I63N 
74174N 
741 75N 
74190N 
74192N 
74193N 
74221N 
74298N 
74365N 
74366N 
7436 7N 


74LSOON 

74LS02N 

74LS04N 

74LSOSN 

74LS08N 

74LS10N 

74LS13N 

74LS14N 

74LS70N 

74LS22N 

74LS28N 

74LS30N 

74LS33N 

741S38N 

74LS74N 

741S75N 

74LS90N 

741S93N 

74LS9SN 

74LS107N 

74LS112N 

74LS113N 

74LS132N 

74LS136N 

74LS151N 

74LS155N 

741S157N 

74LS162N 

74LS163N 

74LS174N 

74LS190N 

741S221N 

74LS258N 

74LS367N 

UNEAR 

CA3045 


I.M323K 5 S 95 
i IM320K 12 150 
I IM320K 15 1 50 
LM320T 5 1 35 

LM320T-8 1 35 

LM320T 12 135 
t LM320T 15 135 
i IM324N 1 40 
I IM339N 1 00 
IM340K-5 1 35 

LM340K 8 1 35 

IM340K 1? 135 
l LM340K 15 135 
LM340K 24 1 35 
l IM340T 5 1 25 

i LM340T 8 1 25 

i IM340T 12 125 
I LM340T-1 5 125 
LW340T-18 125 
LM340T-24 1 25 
l LM350 7 50 

I LM377 3 50 

i LM379 5 00 

) LM380N 1 00 
> LM381 1 60 

I LM382 1 60 

I LM703M 65 
i LM709H 28 
' LM723H N 50 
I LM733N 85 
I LM741CH 35 
I LM741N 30 
I LM747H/N .75 
' LM748N 35 
i LM1303N 1 75 

LM1304 


I 27 


96 LM1305 

95 LM1307 l uo 

115 LM 131 0 2 75 

87 LM1458 47 

85 LM1812 7 50 

2 75 LM1B89 3 00 

1 65 LM2111 1 75 

89 LM2902 2 25 

89 LM3900N 50 

.89 LM3905 1 75 

IM3909N 95 

MC1458V 50 

35 NE550N 1 00 

35 NE555V 39 

55 NE556A 85 

40 NE565A 1 00 

45 NE566V 150 

45 NES67V i 00 

55 NE570B 4 75 

1 25 78L05 60 

45 78108 60 

45 78M05 85 

45 75108 1 75 

45 75491 CN 50 

75 75492CN 55 

75 75494CN 89 

I 25 
I 00 

1 00 A la 0 CONVERTER 

1 00 80388 4 50 

1 10 8700CJ 13.95 

65 8701CN 2200 

65 8750CJ 13 95 

45 LD130 9 95 

89 9400CJV F 

65 ICL7103 

1.10 ICL7107 


C04026 

eg in? i 

CD4028 

C04029 

CD4030 

C04035 

CD4040 

C04042 

C04043 

CD4044 

C04046 

COW49 

CD 4050 

CD4051 

CD4060 

CD4066 

CO 4068 

CO 4069 

CO 4070 

CD 4071 

CO 4072 

CD4073 

CD4075 

CD4076 

CO 4078 

CO 4081 

C04082 

CD4116 

CD4490 

C04507 

CO 4508 

C04510 

C04511 

C04515 

C04516 

CO 4518 

CD4520 

CD-4527 

CD4528 

C04553 

C04566 

CD4583 

CD4585 

CD40192 

74COO 

74C04 

74C10 

74C14 

74C20 

74C30 

74C48 

74C74 

74C76 

74C90 

74C93 

74C154 

74C160 

74C175 

74C192 

74C221 

74C905 

74C906 

74C914 

74C922 

74C923 

74C925 

74C926 

74C927 


2 50 4116 200ns 7 95 CONNECTORS 

66 8 4116 200ns 49 00 30 pm edge 

85 2513B 6 30 44 pm edge 

135 MM5262 
45 MM5280 
1 35 MM5320 
1 35 MM5330 
85 P0411D-3 
85 PD411D4 
85 P5101L 
1 67 4200A 
45 82S2S 
49 91L02A 
1 13 HD0165-5 
1 42 MM57100 
71 GIAY38500-1 


1C SOCKETS 
Samar Tin low Pro/ile 
, PIN 1 UP PIN 1UP 


16 16 28 42 


$67 50 
77 50 
60 00 
70 00 
14 95 
29 95 


pm «« 20 

9 95 WIRE WRAP LEVEL 3 


KEYBOARDS 

56 <ey ASCII keyboard kit 
Fully assembled 
53 key ASCII keyboard kit 
Fully assembled 
Enclosure Plastic 
Metal Enclosure 

LESS 
Red T0 18 

Greer. Yeilow T018 


Green Orange. Yellow Jumbo 25 
CHpllle LED Mounting Clips 8 $125 
(spec-ly red, amber, green, yellow, dear) 

CONTINENTAL SPECIALTIES la slock 


45 416 
45 

« CLOCKS 

45 MM5311 
1 65 MM5312 
♦0 MM5314 
35 MM 5369 
35 MM5841 
47 MM5865 
5 50 CT7010 
* CT7015 


MAX-100 8 41(11 Frag. Clr 


5 50 1 MHz 

3 90 2 MM: 

3.90 <M«z 
2 10 5 MHz 

14 45 10 MHa 

7 95 18 “Hi 

8 95 20 Ml” 
8 95 32JMH* 


4 50 Complete line ol AP Products in slock 


4 25 MM5375AA.N 3 90 32788* 

1 02 MM5375AG N 4 90 \ 8432 MHz 

94 7205 16 50 3.5795 MHz 

2 52 7207 7 50 2 0100 MHz 

1 10 7208 15 95 2 097152 MHz 

1 02 7209 4 95 2 4576 MHz 

1 02 0SM26CN 3 75 3 2768 MHz 

'51 DS0056CN 3 75 5 0688 MHz 

a 3 MM53 ' 04 

2 25 MICROPROCESSOR 6 5536 MHz 


SPECIAL PRODUCTS 

MM5865 Stopwatch Timer 
with 10 pg spec. 

PC board 

Switches Mom Pushbutton 
3 pos slide 
Encodar H00165 5 
Paralronics 100A Logic 
Analyzer $4 

Model 10 Trigger 
Expander Kit S2 

Model 150 Bus 
Grabber Kit 


$369 00 

$23 95 


2 35 6502 
110 6504 

3 00 6522 
35 6800 
40 6802 
35 6820 

1 95 6850 

E 8MM 

35 8085 

2 25 8086 
85 Z«0 


10 95 14 31818 MHz 4 25 

9 95 18 432 MHz 4 50 

9 95 22 1184 MHz 4 50 

11 95 KEYBOARD ENCOOERS 

4 95 AY5 2376 

595 AY5-360O 
595 AY5-9100 
1295 

75 00 740922 

9 95 74C923 

11 95 H00165-5 


$12 50 
17 95 
10 50 
16 50 


Clock Calendar Kll 
2.5 MHz Frequency 
Counter Kll 
30 MHz Frequency 
Counter Kit 

TRANSFORMERS 

6V 300 ma 
12 Volt 300 ma translormer 1 25 


3 75 
2 95 
350 


3 45 OB25P 
4S5 DB25S 
6 95 Cow 
15 00 ne “ e 


1050 

RS232 


I 75 280A 

1 75 82'2 

1 75 8214 

3 00 8216 

2 00 8224 

1 35 8228 

2 75 Si 

2 50 8253 

6 00 8255 

75 8257 

1 96 8259 is » 

6 OO 18020P ptal 17 95 

7 50 1861P 1150 7 

6 95 C0P1802C0 28 95 SlopwMch Kit 

6 95 CD PI 8020 35 00 Aulo Clock Kit 

CD P 1 861 15 95 Digital Clock Kll 


10 95 


DE9S 
DA ISP 
DA15S 
Complete Set 


74.96 

26.95 

17.95 


1 10 


CA3081 
CA3G82 
CA3089 
LM301 AN/AH .35 

LM305H 87 

LM307N 35 

LM306N 100 

LM30SK 1 50 

LM311H/N 90 

LM317T/K 3 75 

LM318 1 35 

LM320K-5 1 50 


CMOS 

C04000 
CD40Q1 
CD 4002 
C04006 
CD4O07 
CD4008 
CD4009 
CD4O10 
CD401I 
CD4012 
CD4013 
CD40I4 
CD401S 
CD4016 
C04017 
C04018 
CO4019 
CO402O 
CO 4021 
004022 
CD4023 
CO4024 
CD4025 


65 


65 

1.25 


UART/FIFO 

AYS- 1013 
AYS-1014 
3341 


5 M (less PROMS) $89 00 

J SO Moth era oar d $39 00 

6 » (nmdir Board $15 00 


12 6V CT 6 
12V 250 ma wall plug 
12V CT 250 ma wall piui 
24V CT 400 ma 
10V 1 2 amp wall plug 
12V 6 amp 

12V 500 ma wall plug 


DISPLAY LEOS 

MAN1 CA 270 2 90 

MAN3 CC 125 39 

MAN7&74 CA.CA 300 1 00 

01704 CC 300 1 25 

0L707/DL707R CA 300 1 00 

DL727<728 CA/CC 500 1 90 

CA/CC 600 1 95 
CC 600 1 95 
CC 357 70 

COCA 500 1 35 
COCA 500 90 

CC/CA 800 2 20 


DL747/750 

DL750 

FND359 

FN050Q 507 

FND503-510 

FND800/807 


50 PROM RESISTORS 'A 

3 00 1702 A 4 95 10 per type 0 

5 50 2S13B upper case 8.75 ,£> type 025 
3 1 0 2708 7 75 — 

3 50 7716T1 18.00 

3 20 2716 Intel 23 00 

1 69 8/2716 Intel 160 00 

2 75 273? 65 00 

1 69 2758 22 SO 

1 69 8741A 60 00 

8748 

8748 8 

MOS/MEMORY RAN8755A 

2101 1 2 95 N82S23 

95 N82S123 
1 34 N62S126 

I 60 N82S129 

4 95 N82S131 

3 75 N82S136 

3 75 N82S137 

3 95 OM8577 


2102-1 
2102AI-4 
2102AN-2L 
2104A-4 
21078 4 
2111-1 
2112-2 
21 14L 300ns 6 75 8223 
21 14L 450ns 5 95 


5% 


100 per type 015 
1000 per type .012 
350 piece pack 
5 per type 6 75 
Vi wan 5% par type .05 


65 00 Talaeidao Terminal 
60 00 Model 91? $645 00 

55 00 Model 970 $945 00 

2 95 

6 60 Tiny la lie Eapenmenton Kit 
S10 00 


DG8 Fluorescent 
DG10 Fluorescent 
10 digit display 
7520 Clalrex photocells 
TIL3H Hex 
MAN 3640 


MAN4640 
MAN47I0 
MAN4740 
MAN6640 
MAN6710 
MANS 740 


39 
950 
CC 30 1 10 
CA 40 1 20 
CC 40 1 20 
CA 40 95 

CC 40 1 20 
CC 56 2 95 
CA 60 1.35 
CC 60 1 35 


8 50 
850 

8 75 BSR Controller $39 95 

8 75 Conneclysurcompurec to »ie BSR Home Control 
? 90 System Computer compiled uhrasomc Irani 
7 go Tune* toi ywr 8SR Sohware to 1802 user 


MA1002A 

MA10O7F 

MA1012A 

102P3 Iranstormer 

MA1012A Transformer 


PROM Eraser 

assembled. 25 PROM capacity $37.50 
(with timer $69.50) 6 PROM capacity OSHA/ 
UL version $69.50 (with timer $94.50) 

Z80 Microcomputer 

16 bit I/O. 2 MHz clock. 2K RAM, ROM Bread- 
board space. Excellent for control. Bare Board 
$28.50. Full Kit $99.00. Monitor $20.00. Power 
Supply Kit $35.00. Tiny Basic $30.00 

S-100 Computer Boards 

8K Static Godbout Econo IIA Kit 145.00 
1 6K Static Godbout Econo XIV Kit 285.00 
24K Static Godbout Econo VIIA-24 Kit 435.00 
32K Static Godbout Econo X-32 Kit 575.00 
16K Dynamic RAM Kit 199.00 

32K Dynamic RAM Kit 310.00 

64K Dynamic RAM Kit 470.00 

Video Interface Kit $135.00 

80 1C Update Master Manual $55.00 

Comp. 1C data selector. 2700 pg. master reference 
guide. Over 51 ,000 cross references. Free update 
service through 1980. Domestic postage $3.50. 
Modem Kit $60.00 
State of the art, orig., answer. No tuning neces- 
sary. 103 compatible 300 baud Inexpensive 
acoustic coupler plans included. 

LRC 7000 + Printer $389.00 

40/20 column dot matrix impact, std. paper. 

Interface all personal computers. 

64/40/32/20 version $405.00. Optional cables 
available. 

LRC 7000 printer interface cable for Super Elf 
with software $26.00 


NiCad Battery Fixer/Charger Kit 

Opens shorted cells that won’t hold a charge 
and then charges them up, all in one kit w/full 
parts and instructions. $7.25 

Rockwell AIM 65 Computer 

6502 based single board with full ASCII keyboard 
and 20 column thermal printer. 20 char, alphanu- 
meric display. ROM monitor, fully expandable. 
$375.00 . 4K version $450.00 4K Assembler 
$85.00 8K Basic Interpreter $100.00 
Special small power supply for AIM65 assem. in 
frame $54.00. Complete AIM65 in thin briefcase 
with power supply $499.00. Molded plastic 
enclosure to fit both AIM65 and power supply 
$47.50. Special Package Price: 4K AIM, 8K Basic, 
power supply, cabinet $599.00 
Al M65/KI MA/IM/Super Elf 44 pm expansion 
board; 3 female and 1 male bus. Board plus 3 
connectors $22.95. 

60 Hz Crystal Time Base Kit $4.40 

Converts digital clocks from AC line frequency 
to crystal time base. Outstanding accuracy. 

Video Modulator Kit $8.95 

Convert TV set into a high quality monitor w/o 
affecting usage. Comp, kit w/full instruc. 

Multi-volt Computer Power Supply 

8v 5 amp, ±18v .5 amp, 5v 1.5 amp, 5v 
.5 amp, 12v .5 amp, 12v option. ±5v, ±12v 
are regulated. Basic Kit $29.95. Kit with chassis 
and all hardware $43.95. Add $4.00 shipping. Kit 
of hardware $14.00. Woodgrain case $10.00. 
$1.50 shipping. 



RCA Cosmac 1802 Super Elf Computer $106.95 


Compare features before you decide to buy any 
other computer. There is no other computer on 
the market today that has all the desirable bene- 
fits of the Super Elf for so little money. The Super 
Elf is a small single board computer that does 
many big things. It is an excellent computer for 
training and for learning programming with its 
machine language and yet it is easily expanded 
with additional memory. Full Basic. ASCII 
Keyboards, video character generation, etc. 
Before you buy another small computer, see if it 
includes the following features: ROM monitor, 
State and Mode displays; Single step; Optional 
address displays; Power Supply; Audio Amplifier 
and Speaker; Fully socketed for all IC’s; Real cost 
of in warranty repairs; Full documentation. 

The Super Elf includes a ROM monitor for pro- 
gram loading, editing and execution with SINGLE 
STEP for program debugging which is not in- 
cluded in others at the same price. With SINGLE 
STEP you can see the microprocessor chip opera- 
ting with the unique Quest address and data bus 
displays before, during and after executing in- 
structions. Also, CPU mode and instruction cycle 
are decoded and displayed on 8 LED indicators. 
An RCA 1861 video graphics chip allows you to 
connect to your own TV with an inexpensive video 
modulator to do graphics and games. There is a 
speaker system included for writing your own 
music or using many music programs already 
written. The speaker amplifier may also be used 
to drive relays for control purposes. 


plus load, reset, run. wait, input, memory pro- 
tect, monitor select and single step. Large, on 
board displays provide output and optional high 
and low address There is a 44 pm standard 
connector slot for PC cards and a 50 pin connec- 
tor slot for the Quest Super Expansion Board. 
Power supply and sockets tor all IC’s are in- 
cluded in the price plus a detailed 127 pg. instruc- 
tion manual which now includes over 40 pgs. of 
software info, including a series of lessons to 
help get you started and a music program and 
graphics target game. Many schools and univer- 
sities are using the Super Elf as a course of study. 
OEM’s use it for training and R&D. 

Remember, other computers only offer Super Elf 
features at additional cost or not at all. Compare 
before you buy. Super Elf Kit $106.95, High 
address option $8.95, Low address option 
$9.95. Custom Cabinet with drilled and labelled 
plexiglass front panel $24.95. All metal Expan- 
sion Cabinet, painted and silk screened, with 
room for 5 S-100 boards and power supply 
$57.00. NiCad Battery Memory Saver Kit $6.95. 
All kits and options also completely assembled 
and tested. 

Questdata. a software publication for 1802 com- 
puter users is available by subscription for 
$12.00 per 12 issues. Single issues $1.50. Is- 
sues 1-12 bound $16.50. 

Tiny Basic Cassette $10.00, on ROM $38.00, 
original Elf kit board $14.95. 1802 software; 
Moews Video Graphics $3.50. Games and Music 
$3.00, Chip 8 Interpreter $5.50. 


A 24 key HEX keyboard includes 16 HEX keys 

Super Expansion Board with Cassette interface $89.95 


This is truly an astounding value! This board has 
been designed to allow you to decide how you 
want it optioned The Super Expansion Board 
comes with 4K of low power RAM fully address- 
able anywhere in 64K with built-in memory pro- 
tect and a cassette interlace Provisions have 
been made for all other options on the same 
board and it fits neatly into the hardwood cabinet 
alongside the Super EM. The board includes slots 
for up to 6K of EPROM (2708, 2758. 2716 or Tl 
2716) and is fully socketed. EPROM can be used 
for the monitor and Tiny Basic or other purposes. 
A IK Super ROM Monitor $19.95 is available as 
an on board option in 2708 EPROM which has 
been preprogrammed with a program loader/ 
editor and error checking multi file cassette 
read/write software, (relocatable cassette file) 
another exclusive from Quest. It includes register 
save and readout, block move capability and 
video graphics driver with blinking cursor. Break 


points can be used with the register save feature 
to isolate program bugs quickly, then follow with 
single step. If you have the Super Expansion 
Board and Super Monitor the monitor is up and 
running at the push of a button. 

Other on board options include Parallel Input 
and Output Ports with full handshake They 
allow easy connection of an ASCII keyboard to the 
input port RS 232 and 20 ma Current Loop for 
teletype or other device are on board and if you 
need more memory there are two S-1 00 slots for 
static RAM or video boards. Also a IK Super 
Monitor version 2 with video driver for full capa- 
bility display with Tiny Basic and a video interface 
board Parallel I/O Ports $9.85. RS 232 $4.50, 
TTY 20 ma l/F $1.95, S-100 $4.50. A 50 pin 
connector set with ribbon cable is available at 
$15.25 for easy connection between the Super 
Elf and the Super Expansion Board. 

Power Supply Kit for the complete system (see 


Multi-volt Power Supply ). 

Announcing Quest Super Basic— SECOND GENERATION 

A new enhanced version of Super Basic now Enhancements include increased speed, built- 
available. Quest was the first company worldwide in provisions for Stringy Floppy, Floi 

to ship a full size Basic for 1802 Systems. A 
complete function Super Basic by Ron Cenker 


including floating point capability with scientific 
notation (number range ± . 1 7E 38 ) , 32 bit integer 
±2 billion; multi dim arrays, string arrays; string 
manipulation; cassette I/O; save and load, basic, 
data and machine language programs; and over 


in provisions for Stringy Floppy, Floppy Oise, 
Printer Driver, I/O, user definable command 
library and statement renumbering. 

Easily adaptable to most 1802 systems. Re- 
quires 16K RAM minimum for Basic and user 
programs. Source listing for both Serial and 
Parallel I/O included. 

Super Basic on Cassette $40.00. 


Gremlin Color Video Kit $69.95 

32 x 16 alpha/numerics and graphics; up to 8 
colors with 6847 chip; IK RAM at E000. Plugs 
into Super Elf 44 pin bus. No high res. graphics. 
On board RF Modulator Kit $4.95 

Elf II Adapter Kit $24.95 

Plugs into Elf II providing Super Elf 44 and 50 pin 
plus S-100 bus expansion (With Super Ex- 
pansion). High and low address displays, state 
and mode LED’s optional $18.00, 

1802 16K Dynamic RAM Kit $149.00 

Expandable to 32K. Hidden refresh w/clocks up to 4 
MHz w/no wait states. Addl. 16K RAM $63.00 
Super Elf 44 pin expansion board; 3 female and 1 
male bus. Board plus 3 connectors $22.95 
Tiny Basic Extended on Cassette $15.00 

(added commands include Stringy, Array. Cas- 
sette I/O etc.) 

S-100 4-Slot Expansion $ 9.95 

Super Monitor VI. 1 Source Listing $15.00 

Super Color S-1 00 Video Kit $129.95 

Expandable to 256 x 192 high resolution color 
graphics. 6847 with all display modes computer 
controlled. Memory mapped IK RAM expanda- 
ble to 6K. S-1 00 bus 1802. 8080. 8085, Z80 etc. 

Editor Assembler $25.00 

(Requires minimum of 4K for E/A plus user 
source) 

1802 Tiny Basic Source listing $19.00 

Super Monitor V2. 0/2.1 Source Listing $20.00 


TERMS: $5.00 min. order U.S. Funds. Calif residents add 6% tax. 

$10.00 min. order BankAmericard and Master Charge and COD. $1.00 insurance optional. 
Shipping charges will be added on charge cards. 


FREE: Send for your copy of our NEW 1980 
QUEST CATALOG. Include 48c stamp. 


is* Reader Service index-page 241 


Microcomputing, October 1980 225 



“THE BIG BOARD” 

OEM - INDUSTRIAL - BUSINESS - SCIENTIFIC 

SINGLE BOARD COMPUTER KIT! 

Z-80 CPU! 64K RAM! 




THE FERGUSON PROJECT: Three years in the works, and maybe too good to be true. A tribute to hard headed, $ Jk QQ Q (64K KIT 
no compromise, high performance, American engineering! The Big Board gives you all the most needed ** BASIC I/O) 

computing features on one board at a very reasonable cost. The Big Board was designed from scratch to run the 
latest version of CP/M*. Just imagine all the off-the-shelf software that can be run on the Big Board without any 
modifications needed! Take a Big Board, add a couple of 8 inch disc drives, power supply, and an enclosure; and 
you have a total Business System for about 1/3 the cost you might expect to pay. 

FEATURES: (Remember, all this on one board!) 


SIZE: 8Vj x 1 3 3 /« IN. 

SAME AS AN 8 IN. DRIVE. 
REQUIRES: +5V @ 3 AMPS 
+ - 12V @ .5 AMPS. 


64K RAM 

Uses industry standard 4116 RAM S. All 64K is available to the user, our VIDEO 
and EPROM sections do not make holes in system RAM. Also, very special care 
was taken in the RAM array PC layout to eliminate potential noise and glitches. 


Z-80 CPU 

Running at 2.5 MHZ. Handles all 4116 RAM refresh and supports Mode 2 
INTERUPTS. Fully buffered and runs 8080 software. 

SERIAL I/O (OPTIONAL) 

Full 2 channels using the Z80 SIO and the SMC 81 16 Baud Rate Generator. FULL 
RS232! For synchronous or asynchronous communication. In synchronous 
mode, the clocks can be transmitted or received by a modem. Both channels can 
be set up for either data-communication or data-terminals. Supports mode 2 Int. 
Price for all parts and connectors: $85. 


80 x 24 CHARACTER VIDEO 

With a crisp, flicker-free display that looks extremely sharp even on small 
monitors. Hardware scroll and lull cursor control. Composite video or split video 
and sync. Character set is supplied on a 2716 style ROM, making customized 
fonts easy. Sync pulses can be any desired length or polarity. Video may be 
inverted or true. 


FLOPPY DISC CONTROLLER 

Uses WD1771 controller chip with a TTL Data Separator for enhanced 
reliability. IBM 3740 compatible. Supports up to four 8 inch disc drives. Directly 
compatible with standard Shugart drives such as the S A800 or SA801 . Drives can 
be configured for remote AC off-on. Runs CP/M* 2.2. 


FOUR PORT PARALLEL I/O (OPTIONAL) 

Uses Z-80 PIO. Full 16 bits, fully buffered, bi-directional. User selectable hand 
shake polarity. Set of all parts and connectors for parallel I/O: $29.95 


BASIC I/O 

Consists of a separate parallel port (Z80 PIO) for use with an ASCII encoded 
keyboard for input. Output would be on the 80 x 24 Video Display. 


REAL TIME CLOCK (OPTIONAL) 

Uses Z-80 CTC. Can be configured as a Counter on Real Time Clock. Set of all 
parts: $14.95 


SYSTEM COMPARISON 


64K RAM KIT $370.00 

80 x 24 Video Kit 365.00 

Floppy Disk Controller Kit 235.00 

Z-80 CPU Kit 185.95 

SER & PAR. I/O 129.95 

S-100 Mother Board 45.00 

SUB TOTAL $1330.90 


Talk about bangs per buck! The prices shown for 
SI 00 kits were taken from the July 1980 BYTE. 
This will give some basis for comparison between 
the Big Board and a similar system 
implementation on the S100 Buss. 


CP/M* 2.2 FOR BIG BOARD 


The popular CP/M* D.O.S. modified by MICRONIX 
SYSTEMS to run on Big Board is available for $150.00. 


FIRST TIME OFFERED! 


PFM 3.0 2K SYSTEM MONITOR 

The real power of the Big Board lies in its PFM 3.0 on board monitor. PFM commands include: Dump Memory, Boot CP/M*. Copy, Examine, Fill Memory, Test Memory. Go To. 
Read and Write I/O Ports, Disc Read (Drive, Track, Sector), and Search. PFM occupies one of the four 2716 EPROM locations provided. It does not occupy any of the 64K of 
system RAM! 


Digital Research Computers 

** (OF TEXAS) r 

P.O. BOX 401565 • GARLAND, TEXAS 75040 • (214) 271-3538 


TERMS: Initial shipments will be made approximately 3 to 5 weeks after we 
receive your order. VISA, MC, cash accepted. We will accept COD'S (for the 
Big Board only) with a $75 deposit. Balance UPS COD. The $75 deposit 
assures your place in line for the initial production run of Big Board. 


TRADEMARK OF DIGITAL RESEARCH. NOT ASSOCIATED WITH DIGITAL RESEARCH OF CALIFORNIA, THE SUPPLIERS OF CPM SOFTWARE 

** 1 TO 4 PIECE DOMESTIC USA PRICE. 




DIGITAL RESEARCH COMPUTERS 

(214) 271-3538 


32K S-100 EPROM CARD 

NEW! 




USES 2716 s 

Blank PC Board - $34 

ASSEMBLED & TESTED 
ADD $30 

SPECIAL: 2716 EPROM s (450 NS) Are $19.95 EA. With Above Kit. 

7. Any or all EPROM locations can be 
disabled. 

8. Double sided PC board, solder- masked, 
silk-screened. 

9. Gold plated contact fingers. 

10. Unselected EPROM’s automatically 
powered down for low power. 

11. Fully buffered and bypassed. 

12. Easy and quick to assemble. 


KIT FEATURES: 

1. uses +5V only 2716 (2Kx8) EPROM’s. 

2. Allows up to 32K of software on line! 

3. IEEE S-100 Compatible. 

4 Addressable as two independent 16K 
blocks. 

5. Cromemco extended or Northstar bank 
select. 

6. On board wait state circuitry if needed. 


,0 


16K DYNAMIC RAM PARTIALS 
^ \ INTEL 2108 8 K X 1 RAMS 4 


K / 


v 8 FOR $9.95 32 FOR $35 

V FACTORY PRIME! 

Huge special purchase of INTEL Dynamic RAM’s. These 
are 2108-4, 300NS, 8K, Ceramic DIP. The 2108 is the 
INTEL 2116 (16K) tested for either upper or lower 8K only. 
These are factory prime. Full Spec. See INTEL 1978 Cat. 
for details or Memory Design Handbook for application 
data. Both IMSAI and EXTENSYS did mfa. S-100 RAM 
boards using these devices. — P.S. These devices will not 
work in the SD EPANDORAM™. Please specify upper or 
lower 8K. (SI 626 or SI 627) . A super easy RAM to interface 
to a Z80, 16 PIN DIP. 


FOR 

4MHZ 




LOW POWER - 300NS 8 FOR 

2114 RAM SALE! *44 

4K STATIC RAM'S. MAJOR BRAND, NEW PARTS. 

These are the most sought after 2114’s, LOW POWER and 300NS FAST. 

8 FOR $44 


16K STATIC RAM KIT-S 100 BUSS 

PRICE CUT! 



16K STATIC RAM SS-50 BUSS 

PRICE CUT! 



FULLY STATIC! 


BLANK PC BOARD W/DATA-$33 
LOW PROFILE SOCKET SET-$12 
SUPPORT IC’S & CAPS-S19.95 


KIT FEATURES: 

1. Addressable as four separate 4K Blocks. 

2. ON BOARD BANK SELECT circuitry. (Cro- 
memco Standard 1 ). Allows up to 512K on line! 

3. Uses 2114 (450NS) 4K Static Rams. 

4 - ON BOARD SELECTABLE WAIT STATES. 

5 Double sided PC Board, with solder mask and 
silk screened layout. Gold plated contact fingers 

6 All address and data lines fully buffered ASSEMBLED & TESTED-ADD $35 

7. Kit includes ALL parts and sockets. 

8. PHANTOM is jumpered to PIN 67. 

9. LOW POWER: under 1.5 amps TYPICAL from 
the +8 Volt Buss. 

10. Blank PC Board can be populated as any 
multiple of 4K. 


FOR 2MHZ 
ADD $10 



FOR SWTPC 
6800 BUSS! 


OUR #1 SELLING 
RAM BOARD! 


ASSEMBLED AND 
TESTED - $35 


KIT FEATURES: 

1 Addressable on 16K Boundaries 

2 Uses 2114 Static Ram 
3. Fully Bypassed 

4 Double sided PC Board Solder mask 
and silk screened layout 
5. Ail Parts and Sockets included 
6 Low Power: Under 1.5 Amps Typical 


BLANK PC BOARD— $30 COMPLETE SOCKET SET- 
SUPPORT IC'S AND CAPS— $19.95 


$12 


STEREO! / V£-( V/ 

S-100 SOUND COMPUTER BOARD 


16K EPROM CARD-S 100 BUSS 


COMPLETE KIT! 

$Q495 

(WITH DATA MANUAL) 


At last, an S-100 Board that unleashes the full power of two 
unbelievable General Instruments AY3-8910 NMOS computer 
sound IC’s. Allows you under total computer control to 
generate an infinite number of special sound effects for 
games or any other program. Sounds can be called in BASIC, 

ASSEMBLY LANGUAGE, etc. 

KIT FEATURES: 

★ TWO Gl SOUND COMPUTER IC’S. 

★ FOUR PARALLEL I/O PORTS ON BOARD. 

★ USES ON BOARD AUDIO AMPS OR YOUR STEREO. 

★ ON BOARD PROTO TYPING AREA. 

★ ALL SOCKETS. PARTS AND HARDWARE ARE INCLUDED. 

★ PC BOARD IS SOLDERMASKED, SILK SCREENED. WITH GOLD CONTACTS. 

★ EASY. QUICK. AND FUN TO BUILD. WITH FULL INSTRUCTIONS. 

★ USES PROGRAMMED I/O FOR MAXIMUM SYSTEM FLEXIBILITY 
Both Basic and Assembly Language Programming examples are included. 

SOFTWARE: 

SCL'“ is now available 1 Our Sound Command Language makes writing Sound Effects programs 
a SNAP 1 SCL’“ also includes routines for Register-Examine-Modify, Memory-Examine-Modify. 
and Play-Memory SCL 1 ” is available on CP/M* compatible diskette of 2708 or 2716. Diskette - 
$24.95 2708 - $19.95 2716 - $29.95 Diskette includes the source EPROM’S are ORG at 

E000H. 


BLANK PC 
BOARD W/DATA 
$31 




BLANK PC BOARD - $28 

USES 2708’s! 


Thousands of personal and business systems aiuund the world use this boara with 
complete satisfaction. Puts 16K of software on line at ALL TIMES 1 Kit features a top 
quality soldermasked and silk-screened PC board and first run parts and sockets. Any 
number of EPROM locations may be disabled to avoid any memory conflicts Fully 
buffered and has WAIT STATE capabilities. 


ASSEMBLED AND FULLY 
TESTED — ADD $30 


OUR 450 NS 2708’S 
ARE $8.95 EA. WITH 
PURCHASE OF KIT 


RCA CMOS COMPUTER CHIP SET 

INCLUDES: 

1- CDP1802CD CPU I-CDPI861CD VIDEO 1C 

2- CDP1822CE 256 x 4 RAM 1-CDP1862CE COLOR GEN. 
1-CDP1858CE 4 BIT LATCH 1-CDP1863CE SOUND GEN. 

COMPLETE SET $45 LIMITED QTY 


NEW! G.l. COMPUTER SOUND CHIP 

AY3-8910. As featured in July. 1979 BYTE! A fantastically powerful Sound & Music 
Generator. Perfect for use with any 8 Bit Microprocessor. Contains: 3 Tone Channels. 
Noise Generator, 3 Channels of Amplitude Control. 16 bit Envelope Period Control, 2-8 
Bit Parallel I/O. 3 D to A Converters, plus much more! All in one 40 Pin DIP. Super easy 
Interface to the S-100 or other busses 

SPECIAL OFFER: $14.95 each Add $3 for 60 page Data Manual. 


Digital Research Computers 

^ (OF TEXAS) r 

P.O. BOX 401565 • GARLAND, TEXAS 75040 • (214) 271-3538 


TERMS: Add $1.25 postage. We pay balance. Orders under $15 add 75C 
handling. No. C.O.D. We accept Visa and MasterCharge. Tex. Res. add 5% 
Tax. Foreign orders (except Canada) add 20% P & H. 90 Day Money Back 
Guarantee on all items. Orders over $50. add 85C for insurance. 


TRADEMARK OF DIGITAL RESEARCH. 


NOT ASSOCIATED WITH DIGITAL RESEARCH OF CALIFORNIA, THE SUPPLIERS OF CPM SOFTWARE. 




BLAK-RAY Ultraviolet 
Intensity Meter 



TWO MODELS: 
LONG WAVE 
AND 

SHORTWAVE 


Meter consists of a sensor cell attached to 
a compact (3" x 3%" x 3") metering unit. 
Can be hand held or placed directly on 
surface for measuring. Can be used re- 
motely, while connected to a meter hous- 
ing by a 4- foot extension cord. Two 
models available — one for long wave 
and one for short wave ultraviolet. Read- 
ings are in microwatts per square centi- 
meter. Weight: 1 lb. 

Completely assembled (includes sensor 
cell, reduction screen, extension cord, 
contrast filter and certification report.) 

J-221 LONGWAVE 
(300nm-400nm) $242. UU 

J-225 SHORTWAVE _ 

(200nm-280nm) $2bU.OO 


EPROM Erasing Lamp 



• Erases 2708, 2716, 1702A, 5203Q, 5204Q, etc. 

• Erases up to 4 chips within 20 minutes 

• Maintains constant exposure distance of one inch 

• Special conductive foam liner eliminates static 
build-up 

• Built-in safety lock to prevent UV exposure 

• Compact - only 7-5/8" x 2-7/8" x 2" 

• Complete with holding tray for 4 chips 

UVS-11E $79.50 



Jumbo 6-Digit Clock Kit 

* Four .630”ht. and two .300”ht. 
common anode displays 

* Uses MMS314 clock chip 

* Switches for hours, minutes and hold functions 

* Hours easily viewable to 30 feet 

* Simulated walnut case 

* 115 VAC operation 

* 12 or 24 hour operation 

* Includes all components, case and wail transformer 

* Size: 6*. x 3W x 141* 

JE747 $29.95 



• Bright .300 ht. comm, cath- 
ode display 

• Uses MM5314 clock chip 
•Switches for hours, minutes 

and hold modes 

• Hrs. easily viewable to 20 ft. 

• Simulated walnut case 

• 1 1 5 V AC operation 

• 12 or 24 hr. operation 

• Incl. all components, case & 
wall transformer 

• Size: 654" x 3-1/8" x 134” 


JE701 

6-Digit Clock Kit $19.95 


Regulated Power Supply 

Uses LM309K. Heat sink . 
provided. PC board con- — v 
struction. Provides a solid 
1 amp @ 5 volts. Can supply up 
to ±5V, ±9V and ±12V with 
JE205 Adapter. Includes compo- 
nents, hardware and instructions. 

Size: 3V»" x 5" x 2"H 

JE200 $14.95 


ADAPTER BOARD 
-Adapts to JE200- 
±5V, ±9V and ±12V 


DC/DC converter with +5V input. Toriodal hi- 
speed switching XMFR. Short circuit protection. 
PC board construction. Piggy back to JE 200 
board. Size. 3V*" x 2" x 9/1 6"H 




\JE205 


$12.95 


MICROPROCESSOR COMPONENTS 


— 8080A 8080A SUPPORT DEVICfS 

8080A CPU S 7 95 

8212 8-Bit Input/Output 3.25 

8214 Priority Interrupt Control 5.95 

8216 Bi Directional Bus Driver 3 49 

8224 Clock Generator/Driver 3.96 

8226 Bus Driver 3.49 

8228 System Controller/Bus Driver 4 95 

8238 System Controller 5.95 

8251 Prog. Comm 1/0 (USART) 7.95 

8253 Prog Interval rimer 14.95 

8255 Prog Peripri 1/0 (PP1) 9 95 

8257 Prog DMA Control 19 95 

8259 Prog. Interrupt Control 14.95 

6800/6800 SUPPORT DEVICES 

MC6800 MPU $14.95 

MC6802CP MPU with Clock and Ram 19.95 

MC6810API 128X8 Static Ram 4.95 

MC6821 Periph. Inter. Adapt (MC602O) 7.49 

MC6828 Priority Interrupt Controller 10.95 

MC6830L8 1024X8 Bit ROM (MC68A30-8) 14.95 

MC6850 Asynchronous Comm. Adapter 6.95 

MC6652 Synchronous Serial Data Adapt. 6.95 

MC6660 0-600 bps Digital MODEM 10.95 

MC6862 2400 bps Modulator 12.95 

MC6880A Quad 3-State Bus Trans. (MC8T26) 2.25 

MICROPROCESSOR CHIPS— MISCELLANEOUS 

Z80(780C) CPU $13.95 

Z8QA(780-1) CPU 15.96 

COP1802 CPU 1995 

2650 MPU 16.95 

6502 CPU 11.95 

8035N6 8-Bit MPU w/dock, RAM. 1/0 Imes 19 95 
P8085 CPU 19.95 

TMS9900JL 16-Bit MPU 

49.95 


-MICROPROCESSOR MANUALS - 


M-Z80 User Manual 
M-COP1802 User Manual 
M-2650 User Manual 


S7.50 

7.50 

5.00 


2513(2140) Character Generator(upper case) $9 95 
2513(3021) Character Generator(lower case) 9.95 

2516 Character Generator 10.95 

MM5230N 2048-Bit Read Only Memory 1.95 


1101 

1103 

2101(8101) 

2102 

21L02 

2111(8111) 

2112 

2114 

2114L 

2114-3 

2114L-3 

5101 

5280/2107 
7489 
UP0414 
(MK4027) 
MM 5290-2 


256X1 

1024X1 

256X4 

1024X1 

1024X1 

256X4 

256X4 

1024X4 

1024X4 

1024X4 

1024X4 

256X4 

4096X1 

16X4 

4K 

16K 


TMS4044 - 4K 
45NL 

TMS4045 1 024X4 

2117 16.384X1 


SHIFT REGISTERS - 

Dual 25 Bit Dynamic 
Dual 50 Bit Dynamic 
Oual 100 Bit Static 
Dual 64 Bit Accumulator 
500/512 Bit Dynamic 


MM500H 
MM503H 
MM506H 
MM510H 
MMS016H 
2504(1404 A) 1024 Dynamic 


MM5262 


2 XXI 


Static 

Static 

Static 

Sialic 

Static M0S 

Static 450ns 

Static 450ns low power 

Sialic 300ns 

Sialic 300ns low power 

Static 

Dynamic 

Static 

Dynamic 16 pin 

Dynamic 16 pin 150NS 
(UPD416/MK4116) 
Static 

Static 

Dynamic 350ns 
(house marked) 

Dynamic 


3.95 
1.75 

1.95 

3.95 

4.95 

5.95 

6.95 
7.49 

7.95 

7.95 

4.95 
1.75 
4.95 


14.95 

9.95 


2518 

2522 

2524 

2525 

2527 

2528 

2529 
2532 
3341 
74LS670 


Hex 32 Bit Static 
Dual 132 Bit Static 
512 Bit Dynamic 
1024 Dynamic 
Dual 256 Bit Static 
Oual 250 Sialic 
Oual 240 Bit Static 
Quad 80 Bit Static 
fifo 

4X4 Register File (TnState) 


2.95 
2.95 
4.00 
4.00 
2.95 
695 
2 49 


A-Y-5-1013 3CK BAUD 


PROMS 

1702A 2048 FAM0S 

2716 16K‘ EPROM(lntel) 

TMS2516 16K* EPROM (2716) 

'Requires single -»-5V power supply 
TMS2532 4KX8 EPROM 

2708 8K EPROM 

2716 T.l 16K" EPROM 

'•Requires 3 voltages. — 5V. +5V, +12V 
5203 2048 PROM 

6301-1(7611) 1024 
6330-1(7602) 256 
82S23 32X8 

BZS115 4096 

82S 123(56 10) 32X8 
74186 512 

74188 256 

74S287 1024 


Open C Bipolar 
Open Collector 
Bipolar 
Tristate 

TTL Open Collector 
TTL Open Collector 


295 

395 

19.95 

3.96 

995 


Function 
Generator Kit 



Provides 3 basic 
waveforms: sine, 

triangle and square 
wave. Freq. range 
from 1 HztolOOK 
Hz. Output ampli- 
tude from 0 volts 
to over 6 volts 
(peak to peak). 
Uses a 12V supply 
or a ±6V split sup- 
ply. Includes chip, 
P.C. Board, com- 
ponents & instruc- 
tions. 


JE2206B $19.95 


DIGITAL 

THERMOMETER KIT 




■ Dual sensors -control switch for indoor/ 
outdoor or dual monitoring— extension 
up to 500 foot 

■ Continuous LED .8" ht. display 

■ Range: 40®F to 199®F / -40°Cto 100°C 

■ Accuracy: ±1® nominal 

■ Calibrate for Fahrenheit/Celsius reading 

■ Sim. walnut case— AC wall adaptor Incl. 

■ Size: 3K"H x 6-5/8"W x 1-3/8"D 

JE300 $39.95 



DESIGNERS’ SERIES 
Blank Desk-Top Electronic Enclosures 

• High strength epoxy molded 
end pieces in mocha brown 
finish. 

• Sliding rear/bottom panel for 
service and component ac- 
cessibility. 

• Top /bottom panels. 080 thk 
alum. Alodine type 1200 
finish (gold tint color) for 
best paint adhesion after 
modification. 

• Vented top and bottom 
panels for cooling efficiency. 

• Rigid construction provides 
unlimited applications. 

The "DTE" Blank Desk Top Electronic Enclosuresare designed to blend and complement 
today's modern computer equipment and can be used in both industrial and home. The 
end pieces are precision molded with an internal slot (all around) to accept both top and 
bottom panels. The panels are then fastened to 14" thick tabs inside the end pieces to 
provide maximum rigidity to the enclosure. For ease of equipment servicing, the rear/ 
bottom panel slides back on slotted tracks while the rest of the enclosure remains in- 
tact. Different panel widths may be used while maintaining a common profile outline. 
The molded end pieces can also be painted to match any panel color scheme. 



CONSTRUCTION: 



Enclosure 

Panel 


Model No. 

Width 

PRICE 

DTE-8 

8.00” 

$29.95 

DTE-11 

10.65” 

$32.95 

DTE-14 

14.00” 

$34.95 


$10.00 Min. Order - U.S. Funds Only Spec Sheets - 254 

Calif. Residents Add 6% Sales Tax 1981 Catalog Available - Send 414 stamp 

Postage -Add 5% plus $1 Insurance (if desired) 



PHONE 
ORDERS 
WELCOME 
(415) 592-8097 

MAIL ORDER ELECTRONICS - WORLDWIDE 
1355 SHOREWAY ROAD, BELMONT, CA 94002 
PRICES SUBJECT TO CHANGE 


ameco 


ELECTRONICS 



2 National Semiconductor 1 

w RAM SALE 

MM5290J-2 (MK4i 16/UPD416) . . . $6.95 each 

16K DYNAMIC RAM (150NS) 

(8 EACH $49.95) (100 EACH $550.00/lot) 

MM5298J-3A $3.25 each 

8K DYNAMIC RAM (LOW HALF OF MM5290J) 200NS 
(8 EACH $23.95) (100 EACH $250.00/lot) 

MM2114-3 $5.95 each 

4K STATIC RAM (300NS) 

(8 EACH $43.95) (100 EACH $450.00/lot) 

MM2114L-3 $6.25 each 

4K STATIC RAM (LOW POWER 300NS) 

(8 EACH $44.95) (100 EACH $4 75.00/lot) 



Vacuum Vise 

Vacuum-based light-duty 
vise for small components 
and assemblies. ABS con- 
struction. 154" jaws, 154" 
travel. Can be permanently 
installed. 


VV-1 


$3.49 


TRS-80 

16K Conversion Kit 

Expand your 4K TRS-80 System to 16K. 

Kit comes complete with: 

• 8 each MM5290-2 (UPD416) (16K Dynamic Rams) 
150NS 

* Documentation for conversion 

TRS-16K $49.95 


JE610 ASCII 
Encoded Keyboard Kit 


i- 


The JE610 ASCII Keyboard Kit can be interfaced into 
most any computer system. The kit comes complete 
with an industrial grade keyboard switch assembly 
(62-keys), IC's, sockets, connector, electronic compo- 
nents and a double-sided printed wiring board. The 
keyboard assembly requires +5V @ 150mA and —12V 
@ 10mA for operation. Features: 60 keys generate the 
126 characters, upper ana lower case ASCII set. 
Fully buffered. Two user-define keys provided for 
custom applications. Caps lock for upper-case-only 
alpha characters. Utilizes a 2376 (40-pin) encoder 
read-only memory chip. Outputs directly compatible 
with TTL/DTL or MOS logic arrays. Easy interfacing 
with a 16-pin dip or 18-pin edge connector. 


JE610 


(Case not included) 


$79.95 


Desk Top Enclosure for 
JE610 ASCII Encoded Keyboard Kit 

Compact desk-top enclosure: Color-coordinated de- 
signer's case with light tan aluminum panels and molded 
end pieces in mocha brown. Includes mounting hardware. 
Size: 3K"H x 14%"W x 8%"D. 

DTE-AK $49.95 


SPECIAL: JE610/DTE-AK PURCHASED TOGETHER 

(Value $129.90) $124.95 


JE600 

Hexadecimal Encoder Kit 



FULL 8-BIT 
LATCHED OUTPUT 
19 KEY KEYBOARD 


The JE600 Encoder Keyboard Kit provides two separate 
hexadecimal digits produced from sequential key entries 
to allow direct programming for 8-bit microprocessor 
or 8-bit memory circuits. Three additional keys are 
provided for user operations with one having a bistable 
output available. The outputs are latched and monitored 
with 9 LED readouts. Also included is a key entry strobe. 
Features: Full 8-bit latched output for microprocessor 
use. Three user-define keys with one being bistable 
operation. Debounce circuit provided for all 19 keys. 
9 LED readouts to verify entries. Easy interfacing with 
standard 16-pin 1C connector. Only +5VDC required for 
operation. 


JE600 


(Case not included) 


$59.95 


Desk-Top Enclosure for 
JE600 Hexadecimal Keyboard Kit 

Compact desk-top exclosure: Color-coordinated de- 
signer’s case with light tan aluminum panels and molded 
end pieces in mocha brown. Includes mounting hardware. 
Size: 354"H x 8%"W x 8%"D. 

DTE-HK . $44.95 


SPECIAL: JE600/DTE-HK PURCHASED TOGETHER J 
(Value $104.90) $99.95 


228 Microcomputing, October 1980 






C HP 


SN7400N .25 

SN7401N .20 

SN7402N .25 

SN7403N .25 

SN7404N .25 

SN7405N .25 

SN7406N .35 

SN7407N .35 

SN7406N .25 

SN7409N .25 

SN7410N .25 

SN7411N .25 

SN7412N .35 

SN7413N .40 

SN7414N .85 

SN7416N .29 

SN7417N .29 

SN7420N .20 

SN7421N .29 

SN7422N .39 

SN7423N .25 

SN7425N .29 

SN7426N .29 

SN7427N .25 

SN7429N .39 

SN7430N .25 

SN7432N .25 

SN7437N .25 

SN7438N .40 

SN7439N .25 

SN7440N .20 

SN7441N .89 

SN7442N .59 

SN7443N .75 

SN7444N .75 

SN7445N .75 

SN7446N .79 

SN7447N .69 

SN7448N .79 

SN74SON .20 
SN7451N .20 

SN7453N .20 

SN74S4N .20 
SN7459A .25 

SN7460N .20 


CD4000 
CD4001 
CD4002 
C D4006 
CD4007 
CD4009 
CD4010 
CD4011 
C 04012 
CD4013 
CD4014 
CD4015 
C 04016 
CD4017 
C 04018 
C 04019 
C 04020 
CD4021 
C 04022 
C 04023 
C 04024 
C 04025 
CD4026 
CD4027 


.39 


1.19 

1.39 

1.19 


74C00 

74C02 

74C04 

74C08 

74C10 

74C14 

74C20 

74C30 

74C42 

74C48 

74C73 

74C74 


■79 


1.35 

1.35 

1.35 


.49 


7400 TTL 

SN7470N 
SN7472N 
SN7473N 
SN7474N 
SN7475N 
SN7476N 
SN7479N 5.00 

SN7480N .50 

SN7482N .99 

SN7483N .69 

SN7485N .89 

SN7486N .35 

SN7489N 1.75 

SN7490N .49 

SN7491N .59 

SN7492N .43 

SN7493N .43 

SN7494N .65 

SN7495N .65 

SN7496N .65 

SN749/N 3.00 

SN741CON 1.49 
SN74107N .35 

SN74109N .39 

SN74116N 1.95 
SN 74121 N .39 
SN74122N .39 

SN74123N .59 

SN74125N .49 

SN74126N .49 

SN74132N .75 

SN74136N .75 

SN74141N .79 

SN74142N 2.95 
SN74143N 2.95 
SN74144 N 2.95 
SN74145N .79 

SN74147N 1.95 
SN74148N 1.29 
SN74150N 1.25 
SN74151N .59 

SN74152N .59 

SN74153N .79 

SN74154N 1.25 
SN74155N .79 

SN741S6N .79 
SN74157N .65 


Hm 


SN74160N .89 

SN74161N .89 

SN74162N .89 

SN74163N .89 

SN74164N .89 

SN74165N .89 

SN74166N 1.25 
SN74167N 1.95 
SN74170N 1.96 
SN74172N 6.00 
SN74173N 1.25 
SN74174N .99 

SN74175N .89 

SN74176N .79 

SN74177N .79 

SN74179N 1.95 
SN74180N .79 

SN74181N 1.95 
SN74182N .79 

SN74184N 2.25 
SN74185 N 2.25 
SN74186N 9.95 
SN74188N 3.95 
SN74190N 1.25 
SN74191N 1.25 
SN74192N .89 

SN74193N .89 

SN74194N .89 

SN74196N .69 

SN74196N .89 

SN74197N .89 

SN74198N 1.49 
SN74199N 1.49 
SN74S200 4.95 
SN74251N .99 

SN74279N .79 

SN74283N 2.25 
SN74284 N 3.95 
SN74285N 3.95 
SN74365N .69 

SN74366N .69 

SN74367N .69 

SN74368N .69 

SN74390N 1.95 
SN74393N 1.95 


CMOS 


C 04028 
CD4029 
CD4030 
C D4035 
CD4040 
CD4041 
CD4042 
C 04043 
CD4044 
CD4046 
CD4047 
CD4048 
C 04049 
C 04050 
C 04051 
C 04053 
CD4056 
CD4059 
C 04060 
C D4066 
C D4068 
CD4069 


1.79 

2.50 

1.35 


1.19 

1.19 

2.95 

9.95 


C D4070 
CD4071 
C D4072 
CD4076 
C D4081 
C 04062 
CD4093 
CD4098 
MC 14409 14.95 
MC14410 14.95 
MC 14411 14.95 
MC 14419 4.95 

MC 14433 13.95 
MC 14506 .75 

MC 14507 .99 

MC14562 11.95 
MC 14583 2.49 

CD4508 
C D4510 
CD4511 
CD4515 
C 04518 
C D4520 
C 04566 


1.39 


1.19 


3.95 


2.95 

1.79 

1.29 

2.25 


74C00 


74C85 

74C90 

74C93 

74C95 

74C107 

74C151 

74C154 

74C157 

74C160 

74C161 


1.89 

£46 

3.95 

2.25 

1.69 

1.69 


74C163 

74C164 

74C173 

74C192 

74C193 

74C195 

74C922 

74C923 

74C92S 

74C926 

80C9S 

80C97 


1.69 

1.59 

1.39 

1.69 

1.69 

1.59 

5.49 
5.75 

7.50 
7.50 

.79 

.79 


78MG 1.75 

LM106H .99 
LM300H .80 
LM301CN/H .35 
LM302H 1.75 
LM304H 1.49 
LM306H .79 
LM307CN/H .45 
LM308CN/H 1.00 
LM309H 1.10 
LM309K 1.25 
LM310CN 1.95 
LM311N/H .90 
LM312H 1.95 
LM317K 3.95 
LM318CN/H 1.95 
LM319N 1.30 
LM320K-5 1.35 

LM320K-5.2 1.35 
LM320K-12 1.25 

LM320K-15 1.35 

LM320K-18 1.35 

LM320K-24 1.35 

LM320T-5 1.25 

LM320T-5.2 1.25 
LM320T-8 1.25 

LM320T-12 1.25 

LM320T-15 1.25 

LM320T-18 1.25 

LM320T-24 1.25 

LM323K-5 5.95 

LM324N .99 
LM339N .99 
LM340K-5 
LM340K-6 
LM340K-8 
LM340K-12 1.35 
LM340K-15 1.35 


LINEAR 


LM340K-18 1.35 

LM340K-24 1.35 

LM340T-5 
LM340T-6 
LM340T-8 
LM340T-12 1.25 

LM340T-15 1.25 

LM340T-18 1.25 

LM340T-24 1.25 

LM3S8N 
LM370N 
LM373N 
LM377N 
LM380N 
LM380CN 
LM381N 
LM382N 
NE510A 
NE529A 
NE531H/V 3.95 
NE536T 6.00 


1.25 

1.25 

1.25 


1.00 

1.95 

3.25 

2.96 

1.25 
.99 

1.79 

1.79 

6.00 

4.95 


NE540 
NE544N 
NE550N 
NE555V .39 
NE556N .99 
NE560 B 5.00 
NE562B 5.00 
LM565N/H 1.25 
LM566CN 1.75 
LM567V/H .99 
NE570N 4.95 
LM703CN/H .69 
LM709N/H .29 


6.00 

4.95 

1.30 


LM710N .79 
LM711N .39 
LM723N/H .56 
LM733N 1.00 
LM739N 1.19 
LM741CN/H .35 
LM741-14N .39 

LM747N/H .79 
LM748N/H .59 
LM1310N 1.95 

LM1458CN/H .59 
MC1488N 1.95 

MC1489N 1.95 

LM1496N .95 

LM 1556V 1.75 

MC1741SCP 3.00 
LM2111N 1.95 

LM2901N 1.95 

LM3053N 1.50 

LM3065N 1.49 

LM3900N(3401).S9 
LM3905N 
LM3909N 
MC5S58V 
8038 B 
LM754S0N 
75451CN 
75452CN 
75453CN 
75454CN 
75491CN 
75492CN 
7S493N 
75494CN 
RC4136 
RC4151 
RC4194 
RC4195 


1.25 

.59 

4.95 


1.25 

1.25 

1.25 

3.95 

4.95 
4.49 


L 11 

V 11 


74LS00 
74LS01 
74LS02 
74LS03 
74LS04 
74LS06 
74US08 
74LS09 
74LS10 
74 LSI 1 
74LS13 
74LS14 
74LS15 
74LS20 
74LS21 
74LS22 
74LS26 
74LS27 
74LS28 
74LS30 
74 LEM 
74LS37 
74LS40 
74LS42 
'4LS47 


.35 


74LS00TTL 

74LS51 
74LS54 
74LS55 
74LS73 
74LS74 
74LS75 
74LS76 
74LS78 
74LS83 
74LS85 
74LS86 
74LS90 
74LS92 
74LS93 
74LS9S 
74LS96 
74LS107 
74LS109 
74L5112 
74LS123 
74LS125 
74LS132 
74LS136 
74LS138 


74LS139 

74LS151 

74LS155 

74LS157 

74LS160 

74LS161 

74LS162 

74LS163 

74LS164 

74LS175 

74LS181 

74LS190 

74LS191 

74LS192 

74LS193 

74LS194 

74LS195 

74LS253 

74LS2S7 

74LS258 

74L3200 

74LS279 

74LS367 

74LS368 

74LS670 


JE6DS PROGRAMMER 

2704/2708 EPROM PROGRAMMER 



V Rtfintrt: 1 l E O f for Ho Key cntritt. 10 LEO l (2* 2* ) 

' 1 1 (0 s for Dell Memory Refiner. The Data Memory 

- -» RAMi from (he (PROM Chip 
• Onelopmenl tf truer oprotemr tyutimby mtani of a i 


i and Bona) at any add rrn localien 

EPROM ProfranniH coniistirg of: 

A 10 hay Heaadtcimal Ktybnard atumhly. Pronramner Onard uumbly 
4 pnwer urpplns and a LEO/Teit Socket Panel Board nuambly. The Ten 
Sochet ii zero force inurtion type. Power rapuiremeeti: 11SVAC, S0H>. 6W. 
■ Compact datk top enclosure: Color coordinated daifnar'i cast with Iqhl tan 
panels and maided and paces in mocho brown. Sire: 1VH i U Tf « r“"“ 
Weipbt. 0 Ml 

The JE608 EPROM Programmer is a completely tell contained unit which it independent of computer control and requires no additional 
systems lor its operations The EPROM can bo programmed from the Hexadecimal Keyboard or Irom a pre programmed EPROM. The 
JE608 Programmer can emulate a programmed EPROM by the use of tts internal RAM circuits. This will allow the user to test or pretest a 
program, for a system, prior to programming a chip. Any changes in the program can be entered directly into the memory circuits with the 
Hexadecimal Keyboard so that rewriting the entire program will not he necessary The JE608 Programmer contains a Programmet/Board 
with 25 IC s and including power supplies of: -SV. *5V. *12V and +26V. The Hexadecimal Keyboard and LED/Tesi Socket Panel Board 


JE608K KIT $399.95 

JE608A Assembled and tested $499.95 


XC556R .200” red 5/$l 
XC556G .200” green 4/$l 
XC556V .200” yellow 4/$l 
XC556C .200” clear 4/$l 
XC22R .200” red S/$l 
XC22G .200” green 4/$l 
XC22Y .200” yellow 4/$l 
MV10B .170” red 4/SI 


DISCRETE LEDS 

MVSO .085” red 6/51 
XC209R .125” red 5/$l 
XC209G .125” green 4/$l 
XC209Y .125” yellow 4/$l 
XC526R .185” red 5/SI 
XC526G .185” green 4/$l 
XC526Y .185” yellow 4/$l 
XC526C .185” clear 4/$l 


XC111R .190” red 5/SI 

XC111G .190” green 4/SI 

XC111Y :190” yellow 4/$l 

XC111C .190” clear 4/$l 

INFRA-RED LED 
V»”x ¥*”xl/16” flat 
IRL-5/S1 


C.A. — Common Anode DISPLAY LEDS C.C. — Common Cathode 


Type 
MAN 1 
MAN 2 
MAN 3 
MAN 4 
MAN 7G 
MAN 7Y 
MAN 72 
MAN 74 
MAN 82 
MAN 84 
MAN 3620 
MAN 3630 
MAN 3640 
MAN 4610 
MAN 4810 
MAN 4840 
MAN 6610 
MAN 6630 
MAN 6640 
MAN 6650 
MAN 6660 
MAN 6710 
MAN 6750 
MAN 6760 
MAN 6780 
DL701 
DL704 


Polarity 
C.A. — red 
5x7 D.M.— red 
C.C.— red 
C.C.— red 
C. A.— green 
C. A.— yellow 
C.A.— red 
C.C. —red 
C.A.— yellow 
C.C.— yellow 
C.A.— orange 
C.A. —orange ± 1 
C.C.— orange 
C. A.— orange 
C. A.— yellow 
C.C.— yellow 
C.A.— orange— DD 
C. A.— orange ± 1 
C.C.— orange— DD 
C.C.— orange ± 1 
C. A.— orange 
C.A.— red— DD 
C.C. — red i 1 
C.A.— red 
C.C.— red 
C.A.— red ± 1 
C.C.— red 


Ht Price 

.270 2.95 
.300 4.95 
.125 .25 
.187 1.95 
.300 1.25 
.300 .99 
.300 .75 
.300 1.25 
.300 .49 
.300 .99 
.300 .49 
.300 .99 
.300 .99 
.300 .99 
.400 .99 


.560 

.560 

.560 

.560 

.560 

.560 

.560 

.300 

.300 


Type 

DL707 

DL728 

DL741 

DL746 

DL747 

DL750 

DL33B 

FND70 

FND358 

FND359 

FND503 

FND507 

5082-7730 


5082-7613 

5082-7620 

5082-7623 

5082-7730 

5082-7731 

5082-7750 

5082-7751 

5082-7760 

5082-7300 

5082-7302 

5082-7304 

5082-7340 


Polarity 
C.A. —red 
C.C.— red 
C.A.— red 
C.A.— red ± 1 
C.A. —red 
C.C.— red 
C.C. —red 
C.C. 

C.C. t 1 
C.C. 

C.C. (FND500) 
C.A. (FND510) 
C.A.— red 


.300 

.500 

■m 

.630 

.600 


.110 
.250 
.357 
.357 
.500 
.500 
.300 
.800 
.800 

C.C., R.H.D.— red .300 
C.A., L.H.D. — yel. .300 
C.C., R.H.D.— yel. .300 
C.A., L.H.D.— red .300 
C.A., R.H.D.— red .300 
C.A., L.H.D.— red .430 
C.A., R.H.D.— red .430 
C.C., R.H.D.— red .430 
4x7 sgl. dig. RHDP .600 
4x7 sgl. dig. LHDP .600 
Overnge.char. (±1) .600 
4x7 sgl. dig. hex. .600 


1.25 

1.25 

19.95 

19.95 

15.00 

22.50 


RCA LINEAR 


CA3013T 2.15 

CA2023T 3.25 

CA3035T 2.48 

CA3039T 1.35 

CA3046N 1.30 

CA3059N 3.25 

CA3060N 3.25 

CA3080T 1.25 

CA3081N 2.00 


CA3082N 2.00 

CA3083N 1.60 

CA3086N .85 

CA3089 N 3.75 
CA3130T 1.39 

CA3140T 1.25 

CA3160T 1.25 

CA3401N .59 

CA3600N 3.50 


CALCULATOR 

CHIPS/DRIVERS 

CLOCK CHIPS 

MOTOROLA 

MM572S 

$2.95 

MM5309 

4.95 

MC1408 L7 

4.95 

MM5738 

2.95 

MM5311 

4.95 

MC1408 L8 

5.75 

DM8864 

2.00 

MM5312 

4.95 

MC1439L 

2.95 

DM8865 

1.00 

MM5314 

4.95 

MC3022P 

2.95 

DM8887 

.75 

MM5316 

6.95 

MC3061P 

3.50 

DM8889 

.75 

MM5318 

9.95 

MC4016 (74416)7.50 

9374 7-seg. 


MM5369 

2.95 

MC4024P 

3.95 

LED driver 

1.50 

MM5377 

4.95 

MC4040P 

6.95 

MM 5309 

4.95 

MM5387/1998a 4.95 

MC4044P 

4.50 


LOW PROFILE 
(TIN) SOCKETS 

-24 25-49 50-100 


8 pin LP 
14 pin LP 
16 pin LP 
18 pin LP 
20 pin LP 
22 pin LP 
24 pin LP 


36 pin LP 
40 pin LP 

.60 

.63 

.59 

.62 

.58 

.61 

ff 

Ifllllf 1 

8 pin WW 
10 pin WW 
14 pin WW 


SOLDERTAIL (GOLD) 
STANDARD 

1-24 25-49 50-100 

8 pin SG 

.39 

.35 

.31 

16 pin WW 

14 pin SG 

.49 

.45 

.41 

18 pin WW 

16 pin SG 

.54 

.49 

.44 

20 pin WW 

18 pin SG 

.59 

.53 

.48 

22 pin WW 

24 pin SG 

.79 

.75 

.69 

24 pin WW 

28 pin SG 

1.10 

1.00 

.90 

28 pin WW 

36 pin SG 

1.65 

1.40 

1.26 

36 pin WW 

40 pin SG 

1.75 

1.59 

1.45 

40 pin WW 


IK 

TrrrTrr 


SOLDERTAIL 
STANDARD (TIN) 


14 pin ST 
16 pin ST 
18 pin ST 
24 pin ST 
28 pin ST 
36 pin ST 
40 pin ST 


1. IS 
1.30 


WIRE WRAP SOCKETS 
(GOLD) LEVEL #3 

1-24 2S-49 50-100 


.59 

M 


.54 

.63 


1.35 

1.26 

1.53 

1.99 

2.09 


1.23 

1.14 

1.38 

1.79 


1/4 WATT RESISTOR ASSORTMENTS -5% 


ASST. 2 
ASST. 3 


10 OHM 12 OHM 15 OHM 18 OHM 22 OHM 

27 OHM 33 OHM 39 OHM 47 OHM 56 OHM 

68 OHM 82 OHM 1 00 OHM 120 OHM 150 OHM 

180 OHM 220 OHM 270 OHM 330 OHM 390 OHM 

470 OHM 560 OHM 680 OHM 820 OHM IK 
2.2K 


1.2K 

3.3K 

8.2K 


3.9K 


4.7K 

I2K 


I50K 
Sta. 390H 


5.6k 

1SK 

39K 

100K 

270K 

680K 


2.7K 

6.8K 

18K 

47K 

I20K 

330k 

820K 


ASST. 8R Includes Resistor Assortments 1-7 (350 PCS.) $10.95ea. 


50 PCS 

$1.95 

50 PCS 

$1.95 

50 PCS 

$1.95 

50 PCS 

$1.95 

50 PCS 

$1.95 

50 PCS 

$1.95 

50 PCS 

$1.95 

$10.95 ea. 


$10.00 Min. Order — U.S. Funds Only Spec Sheets — 254 

Calif. Residents Add 6% Sales Tax 1981 Catalog Available - Send 414 stamp 

Postage — Add 5% plusSI Insurance (if desired) 

PHONE 
ORDERS 
WELCOME 
(415) 592-8097 

MAIL ORDER ELECTRONICS - WORLDWIDE 

1355 SHOREWAY ROAD, BELMONT, CA 94002 ^41 

PRICES SUBJECT TO CHANGE 




J lameco 

l ijuui.i.iTCn 


AY-5-9100 

AY-5-9200 

AY-5-9500 

AY -5-2376 

HD0165 

74C922 

74C923 


TELEPHONE/KEYBOARD CHIPS 

Push Button Telephone Dialler 
Repertory Dialler 
CMOS Clock Generator 
Keyboard Encoder (88 keys) 
Keyboard Encoder (16 keys) 
Keyboard Encoder (16 keys) 
Keyboard Encoder (20 keys) 


.A 

4.95 


$14... 

14.95 

4.95 

11.95 

7.95 
5.49 
5.75 


ICM7045 

ICM7205 

ICM7207 

ICM7208 

ICM7209 


ICM CHIPS 

CMOS Precision Timer 
CMOS LED Stop watch /Timer 
Oscillator Controller 
Seven Decade Counter 
Clock Generator 


24.95 

19.95 
7.50 
19.95 

6.95 


NM0S READ ONLY MEMORIES 

MCM6571 128 X 9 X 7 ASCII Shifted with Greek 13.50 

MCM6574 128 X 9 X 7 Math Symbol & Pictures 13.50 

MCM6575 128 X 9 X 7 Alpha Control Char Gen 13.50 


MISCELLANEOUS 

TL074CN Quad Low Noise bi-fet Op Amp 

TL494CN Switching Regulator 

TL496CP Single Switching Regulator 

11C90 Divide 10/11 Prescaler 

95H90 Hi-Speed Divide 10/11 Prescaler 

4N33 Photo-Darlington Opto-lsolator 

MK50240 Top Octave Freq. Generator 

DS0026CH 5Mhz 2-phase MOS clock driver 

TIL308 . 27" red num. display w/integ. logic chip 10.95 

MM5320 TV Camera Sync. Generator 14.95 

MM5330 4tt Digit DPM Logic Block (Special) 3.95 

LD110/111 3Vi Digit A/D Converter Set 25.00/set 

MC14433P Digit A/D Converter 13.95 


2.49 

4.49 

1.75 

14.95 

11.95 

1.25 

17.50 

3.75 


LITR0NIX ISO-LIT 1 

Photo Transistor Opto-lsolator 
(Same as MCT 2 or 4N25) 

49 i eacli 


SN 76477 

SOUND GENERATOR 
Generates Complex Sounds 
Low Power - Programmable 

$3.95 each 


TV GAME CHIP AND CRYSTAL 

AY-3-8500-1 and 2.01 MHZ Crystal (Chip & Crystal _ n _ . . 

includes score display. 6 games and select angles, etc. f.jQ/ SCI 


XR205 $8.40 

XR210 4.40 

XR215 4.40 

XR320 1.55 

XR-L555 1.50 

XR555 .39 

XR556 99 

XR567CP 99 
XR567CT 1.25 
XR1310P 1.95 

XR1468CN 3.85 
XR1488 1.95 

XR1489 1.95 

EXAR 

JE2206K9 19.95 
XR1800 3.20 

XR2206 4.40 

XR2207 3.85 

XR2208 5.20 

XR2209 1.75 

XR2211 5.25 

XR2212 4.35 

XR2240 3.45 

XR2242CP 

XR2264 

XR2556 

XR2567 

XR3403 

XR4136 

XR4151 

XR4194 

XR4202 

XR4212 

XR4558 

XR4739 

XR4741 

1 1.50 

4.25 
3.20 
2.99 

1.25 
1.25 
3.95 
1.45 
3.60 
2.05 

.75 

1.15 

1.47 


nmnFS 


TYPE 

VOLTS W 

PRICE 





1N4002 

100 PIV 1 AMP 

12/1.00 

TYPE 

VOLTS W 

PRICE 

1N4003 

200 PIV 1 AMP 

12/1.00 

1N746 

33 

400m 

4/1.00 

1N4004 

400 PIV 1 AMP 

12/1 00 

1N751 

5 1 

400m 

4/1.00 

1N40O5 

600 PIV 1 AMP 

10/1 00 

1N752 

5.6 

400m 

4/1 00 

1NA006 

800 PIV 1 AMP 

10/1.00 

1N753 

6.2 

400m 

4/1.00 

1N4007 

1000 PIV 1 AMP 

10/1.00 

1N754 

6.8 

400m 

4/1.00 

1N3600 

50 200m 

6/1.00 

1N757 

80 

400m 

4/1.00 

1N4148 

75 10m 

15/1 00 

1N759 

120 

400m 

4/1.00 

1N4154 

35 10m 

12/1.00 

1N959 

8.2 

400m 

4/1 00 

1N4733 

5.1 1w 

4/1.00 

1N965 

IS 

400m 

4/1.00 

1N4734 

5.6 1w 

4/1.00 

1N5232 

56 

500m 

4/1.00 

1N4735 

6 2 1w 

4/1.00 

1N5234 

6.2 

500m 

4/1.00 

1N4736 

68 1w 

4/1.00 

1N5235 

6.8 

500m 

4/1.00 

1N4738 

8.2 1w 

4/1.00 

1N5236 

7.5 

500m 

4/1.00 

1N4742 

12 1w 

4/1.00 

1N5242 

12 

500m 

4/1.00 

1N4744 

15 1w 

4/1.00 

1N5245 

15 

500m 

4/1.00 

INI 183 

50 PIV 35 AMP 

1.60 

1N456 

25 

40m 

6/1 00 

IN1 1 84 

100 PIV 35 AMP 

1.70 

1N458 

150 

7m 

6/1.00 

INI 185 

150 PIV 35 AMP 

1.70 

1N485A 

180 

10m 

5/1.00 

INI 186 

200 PIV 35 AMP 

1 80 

1N4001 

50 PIV 1 AMP 

12/1.00 

INI 188 

400 PIV 35 AMP 

3.00 


SCR AND FW BRIDGE RECTIFIERS 


C36D 
C36M 
C106B1 
2N2328 
MDA 980-1 
MDA 980-3 

15A @ 
35A @ 
3.6 A @ 
1.6A @ 
12A @ 
12A @ 

400V 

600V 

200V 

300V 

50V 

200V 

SCR(2N1849) 

SCR 

SCR 

SCR 

FW Bridge Rec. 
FW Bridge Rec. 

$1.95 

2.25 

.50 

.50 

1.95 

2.25 


TRANSISTORS 

2N3904 

4/1.00 

MPSA05 

3/1.00 

2N3055 

.89 

2N3905 

4/1.00 

MPSA06 

3/1.00 

MJE3055 

1.00 

2N3906 

4/1.00 

TIS97 

4/1.00 

2N3392 

4/1.00 

2N4013 

.65 

TIS98 

4/1.00 

2N3398 

4/1.00 

2N4123 

4/1.00 

40409 

1.75 

PN3567 

3/1.00 

PN4249 

4/1.00 

40410 

1.75 

PN3568 

4/1.00 

PN4250 

4/1.00 

40673 

1-75 

PN3569 

4/1.00 

2N4400 

4/1.00 

2N918 

2/1.00 

MPS3638A 

4/1.00 

2N4401 

4/1.00 

2N2219A 

2/1.00 

MPS3702 

4/1.00 

2N4402 

4/1.00 

2N2221A 

3/1.00 

2N3704 

4/1.00 

2N4403 

4/1.00 

2N2222A 

3/1.00 

MPS3704 

4/1.00 

2N4409 

4/1.00 

PN2222 Plastic 

6/1.00 

2N3705 

4/1.00 

2N5Q86 

4/1.00 

2N2369A 

2/1.00 

MPS3705 

4/1.00 

2N5087 

4/1.00 

MPS2369 

4/1.00 

2N3706 

4/1.00 

2N5088 

4/1.00 

2N2484 

4/1.00 

MPS3706 

4/1.00 

2N5CS9 

4/1.00 

2N2906 

2/1.00 

2N3707 

4/1.00 

2N5129 

4/1.00 

2N2907 

3/1.00 

2N3711 

4/1.00 

PN5134 

4/1.00 

2N2925 

4/1.00 

2N3724A 

.65 

PN5138 

4/1.00 

MJE2955 

1.25 

2N3725A 

1.00 

2N5139 

4/1.00 

2N3053 

2/1.00 

2N3772 

2.25 

2NS210 

4/1.00 



2N3823 

1.00 

2N5449 

3/1.00 



2N3903 

4/1.00 

2N5951 

2400 


CAPACITOR 


CORNER 


10 pf 

M 

.06 

.05 

ooi m f 

a 

Tr 

.05 

22 pf 

M 

jH 

M 

0047fiF 

.08 

M 

Jt 6 

47 pi 

■ US 

jfi 

.05 

OVF 

.08 

M 

.a 

100 pi 

.06 

.06 

.05 

.022/tF 

JB 

xn 

06 

220 pi 

.08 

.06 

.05 

047uF 

.06 


.06 

470 of 

.08 .06 . 06 i u F 

100 VOLT MYLAR FILM CAPACITORS 

.15 

.12 

.10 

001ml 

12 

10 

.07 

022ml 

.13 

.11 

08 

0022 

12 

10 

.07 

047ml 

.21 

.17 

13 

0047ml 

12 

10 

07 

Imf 

.27 

23 

.17 

Olmf 

12 

.10 

07 

,22ml 

33 

.27 

22 


. 1 /35V 
15/35V 
22/35V 
33/35V 
.4 7/35 V 
.68 /35V 
1.0/35V 


.47/50 V 

1.0/50V 

3 3: 50V 

4.7/25V 

10/25V 

10/50V 

22/25V 

22/50V 

47/25V 

47/50V 

100/25V 

100/50V 

220/25V 

220/50V 

470/25 V 

1000/I6V 

2200/1 6 V 


+ 20*. DIPPED TANTALUMS (SOLID) CAPACITORS 

.39 .34 .29 1.5/35V .41 .37 

.39 .34 .29 2. 2/35 V 41 .45 

.39 .34 .29 3.3/25V .53 .47 

.39 .34 .29 4.7725V .63 .56 

.39 .34 .29 6.8/25 V .79 .69 

■S *2i *2 T5/2SV l-M i.a 

.39 . 34 .29 22/6V -79 -69 


.19 .16 .12 
.17 .15 .11 
.18 .15 .11 
.18 .15 .11 
.19 .16 .12 


.41 .37 .34 


.79 .69 .61 


47/25V 
47/50V 
10/16V 
1 0/25V 
1.0/50V 
47/16V 
47/25V 
4 7 /50V 
10/16V 
10/25V 
10/50V 
47/SOV 
100/ 16V 
10O/25V 
100/50V 
220/16V 
470/25 V 


.15 .13 .12 

.16 .14 .13 


.16 .14 .13 

.17 .15 .14 


.17 .15 .14 
.15 .13 .12 
.16 .14 .13 


t/ 0 Reader Service index— page 241 


Microcomputing , October 1980 229 



MK ITATIC RAID 

S 100 MEMORY BOARD 

FULL* STATIC Off RATION 

C M AAnr *k ban* addressable 

4>/1 U U YD extended memo** mgmt 

■fjj MEETS Ifff PROPOSE D 

s too SIGNAL standards 

4 MHZ Off RATION 

California Computer Systems 


1024x4 Static RAM 
450 ns 


VCO Waveform Gen. 
wfsme J065 


VOiTAC£ REGULATORS 


DUST COVERS 


APPLE DISK 
APPLE KEYBOARD 
TRS-80 KEYBOARD 
TRS-80 RECORDER 
TRS-80 SINGLE DISK 
TRS-80 DOUBLE DISK 
PET DISK 

PET TERMINAL/COMP 
NORTHSTAR COMPUTER 
SOROC TERMINAL 


$ 

$ 

$ 

$ 

$ 

$ 

$ 


3.75 

8.75 

7.75 

3.75 

3.75 

6.75 

7.75 
$15.75 
$11.75 
$10.75 


Take 20% off 'IS prices] 


744.SOO 
74LS02 
741S03 
74LS04 
74 L SOS 
74LS09 
741 S 1 0 
741S20 
74LS21 
741 $2 2 
74LS26 
74LS27 
74LS30 
74LS32 
74LS38 
74LS4 2 
74LS4S 
74LSS1 
74LSS4 
74LS74 
74LS7S 
74LSS3 
74LS8S 
74LS86 
74LS90 
74LS93 
74LS107 
74LS112 
74LS113 
74LS122 
74LS123 
74LS126 
74LS138 
74LS151 
741SIS3 
?«lSl55 


74LS1S8 
74LS180 
74LS1S1 MO 
74LS162 96 

74LSI63 95 

741SI64 1 15 

MIS 165 89 

74LS170 196 

74LS174 90 

741. Si 75 90 

74LS190 110 

74LS193 96 

74LS19S 96 

741. S 198 86 

741S221 140 

741S240 2 45 

741S241 2 46 

74LS243 2 20 

74LS244 2 45 

74LS245 6 96 

741S253 96 

741S2S7 96 

74LS258 96 

74LS259 2 86 

74LS279 66 

MIS283 1 00 
741S293 1 85 

74LS298 120 

74LS388 96 

74CS387 96 

74I.S388 96 

74CS373 2 50 

74CS374 2 60 

74LS386 66 

SM74393M 1 75 


T1CHNOLOOV. INC 


[APPLE II Computer 
with full 48K of memory! 

*1099°° 


EPROMS 

2708 S675 

IK *8 4 50 NS 
.8 FOP S48 50 
2716 SI8 95 
16K ( 2K x 8 ) 450NS 
FOR s 1*2 95 

2732 $4700 

3 2K [4096x81 


video 

fOO 

CJ 

'139® ■■ 

Leedex Corp. 

12" BLACK & WHITE 
LOW COST VIDEO 
MONITOR 


HOME STUDY COURSE ON CASSETTE 

* t .r 



APPLE GAME PORT 

REMOTE PLUG IN EXPANDER with 

SELECTOR! Allows continuous 

connection of any three 

of the Apple game port 
options. 

^ *3995 





APPLE EXPANSION KIT 
16K Memory Add -On. ~ 

t 4750 


MEMORY ADO -ON KIT 
INCLUDES INSTRUCTIONS 
PA ms AND JUmfERS 
NO TOOLS REQUIRED 


Plexiglass cover 
as shown 
195 


S-K» MEMORY BOARD 

16K 
STflTIC 
RAM 



A TESTED 
California Computer Systems 


FULLY STATIC Off RAT ION 
L 4 K BANK ADDRESSABLE 

HU NOE 0 ME* TORT MQMJ 
MEETS IEEE PROPOSE D 

s- KXJ signal standards 

4 MHZ OPERATION 

assembled* 249 00 


555 Timer I 8212 
27<t 


•^eort 


1295 



HH4GH199” 


I Each course oelow includes o special course book plus two cassenes tor a totol course length I 
of 2 » hours The lecture <s completely coo'dmoted to the pages of the book ond cassei'ei I 
can be ployed on any standard cassette ployer 

S2- PROGRAMMING 
MICROPROCESSORS 

For the student who has completed S-1. 
GOAL To provide an overall and practical ] 
understanding of the concepts of Micro J 
Computer Programming. 2.5 hours. 


© 


TECHNOLOGY, IfMC. 


SI- INTRODUCTION TO 
MICROPROCESSORS 

MFor Non Specialists. Course contains: 
Definitions * Application* Evaluation 
Terms*System Components* 2 £hrs. 


• NO TECHNICAL BACKGROUND ASSUMED- 


BO-COLUMN IMPACT PMMTHt 
LOWUT m PWCfl — MMMMIT M NJWOMU 

g55s- '64900 

* >ase 2 I inc. 


POWER CONTROLLER 
8outlet 6 switched 
EMI filtered Unso 
Circuit Breaker O/ 


TRS-80 I .J980 

1 16 K Memory Add-On I '7 C" 

*49 95 k t I Master 

With jumpers and 
instructions 





IQ12 


*699°° 


.LOGIC 
‘1 7* t=* f PROBE 
T HIT 


" 

”TTL” 


SN7400N 

.20 

SN7475N 

36 

SN7402N 

.22 

SN7482N 

1.05 

SN7404N 

.22 

SN7492N 

.50 

SN7408N 

.26 

SN7493N 

.48 

SN7410N 

.22 

SN7495N 

.60 

SN7412N 

.28 

SN7496N 

70 

SN7413N 

35 

SN74122N 

.39 

SN7414N 

.55 

SN74136N 

.95 

SN7416N 

.29 

SN74141N 

.69 

SN7417N 

.29 

SN74151N 

.65 

SN7423N 

28 

SN74153N 

.65 

SN7425N 

.25 

SN74154N 

1.25 

SN7430N 

.23 

SN74155N 

.80 

SN7437N 

.29 

SN74157N 

.69 

SN7438N 

30 

SN74160N 

.95 

SN7440N 

.22 

SN74161N 

90 

SN7442N 

57 

SN74163N 

.85 

SN7443N 

78 

SN74164N 

87 

SN7445N 

78 

SN74165N 

.87 

SN7451N 

20 

SN74174N 

.99 

SN7454N 

20 

SN74175N 

.89 

SN7474N 

36 

SN74180N 

75 



CONCORD 

COfflPUTCR 

componems 

1971 SOUTH STATE COLLEGE ANAHEIM, CA. 92806 

VISA MASTERCHARCE /71>|\ft07 f\dl MINIMUM ORDER S1000 

CHECH OR MO UM)93r0o37 AOOSISOfORFRT 

NO COO s, « fc wd sell over 12 .000 t t pfsof*mi conductors CAL RES A00 6»J 


MSM5832 MICROPROCESSOR 
REAL-TIME 
CLOCK/CALENDAR 
GENERAL DESCRIPTION 

Ih. MSM141? it a monolith .r nwtel-gaie CMOS ime<}.a.e<) 

Cixuil mu tunc hoot m i ren tint* clock calendar io> use in 
huh onemed microproceuor appheahons The on crup J? 7«a 
"1 coraiai cannoned mediator l «e baae » counted oo«n to 
pxvnde eddiMubie *H*| I O data <X SECONOS Minutes 
HOURS date month and *€»R Oata ac 

cevc i« (tvuroaad By JM address chipaelett read .win 
hold input* Olher lunctwn* include IPH pi 
leap rear dem.i, cation and Wini 30 «• 

The MSMS43P normal ope a-e* horn a 5 -on 



230 Microcomputing, October 1980 







Start learning and computing for only $129. 95 with a Netronics 8085-based 
computer kit. Then expand it in low-cost steps to a business/development system 
with 64k or more RAM, 8" floppy disk drives, hard disks and multi- terminal HO. 

THE NEW EXPLORER/85 SYSTEM 

Special! Full 8" floppy, 64k system for less than the price of a mini! Only $1499.95! 


Imagine — for only $129.95 you can own the starting 
level of Explorer/85, a computer that’s expandable into 
full business/development capabilities — a computer 
that can be your beginner system, an OEM controller, 
or an IBM-formatted 8" disk small business system. 
From the first day you own Explorer/85, you begin 
computing on a significant level, and applying princi- 
ples discussed in leading computer magazines. Ex- 
plorer/85 features the advanced Intel 8085 cpu, which 
is 100% compatible with the older 8080A. It offers on- 
board S-100 bus expansion. Microsoft BASIC in ROM, 
plus instant conversion to mass storage disk memory 
with standard IBM-formatted 8" disks. All for only 
$129.95. plus the cost of power supply, keyboard/ 
terminal and RF modulator if you don’t have them (see 
our remarkable prices below for these and other, ac- 
cessories). With a Hex Keypad/display front panel. 
Level “A" can be programmed with no need for a ter- 
minal. ideal for a controller. OEM, or a real low-cost 
start. 

Level “A” is a 
complete operating 
system, perfect for 
beginners, hobbyists, 
industrial controller 
use. $129.95 



LEVEL “A” SPECIFICATIONS 

Explorer/85's Level ’A” system features the advanced 
Intel 8085 cpu, an 8355 ROM with 2k deluxe monitor/ 
operating system, and an advanced 8155 RAM I/O . . . 
all on a single motherboard with room for RAM/ROM/ 
PROM/ EPROM and S-100 expansion, plus generous 
prototyping space. 

PC Board: Glass epoxy, plated through holes with 
solder mask. • I/O: Provisions for 25-pin (DB25) con- 
nector for terminal serial I/O. which can also support a 
paper tape reader . . . cassette tape recorder input and 
output . . . cassette tape control output . . . LED output 
indicator on SOD (serial output) line . . . printer inter- 
face (less drivers) . . . total of four 8-bit plus one 6-bit 
I/O ports. • Crystal Frequency: 6.144 MHz. • Control 
Switches: Reset and user (RST 7.5) interrupt . . . addi- 
tional provisions for RST 5.5, 6.5 and TRAP interrupts 
onboard. • Counter/Timer Programmable, 14-bit bi- 
nary. • System RAM: 256 bytes located at F800. ideal 
for smaller systems and for use as an isolated stack 
area in expanded systems . . . RAM expandable to 64K 
via S-100 bus or 4k on motherboard. 

System Monitor (Terminal Version): 2k bytes of 
deluxe system monitor ROM located at F000. leaving 
free for user RAM/ ROM. Features include tape 
load with labeling . . . examine/change contents of 
memory . . . insert data . . . warm start . . . examine and 
change all registers . . . single step with register display 
at each break point, a debugging/traininc feature ... go 
to execution address . . . move blocks of memory from 
one location to another . . . fill blocks of memory with a 
constant . . . display blocks of. memory . . . automatic 
baud rate selection to 9600 baud . . . variable display 
line length control (1-255 characters/line) . . . chan- 
nelized I/O monitor routine with 8-bit parallel output 
for high-speed printer . . . serial console in and console 
out channel so that monitor can communicate with I/O 
ports. 

System Monitor (Hex Keypad/Display Version): 
Tape load with labeling . . . tape dump with labeling 
. . . examine/change contents of memory . . . insert data 
. . . warm start . . . examine and change all registers . . . 


(Also available wired & tested. $1799.95) 



Full 8” disk system for less than the price of a mini (shown with 
Nctronics Explorer/85 computer and new terminal). System features 
floppy drive from Control Data Corp., world’s largest maker of 
memory storage systems ( not a hobby brand/) 



single step with register display at each break point . . . 
go to execution address. Level *'A" in this version 
makes a perfect controller for industrial applications, 
and is programmed using the Netronics Hex Keypad/ 
Display. It is low cost, perfect for beginners. 

HEX KEYPAD/DISPLAY SPECIFICATIONS 
Calculator type keypad with 24 system-defined and 16 
user-defined keys. Six digit calculator-type display, 
that displays full address plus data as well as register 
and status information. 

LEVEL ”B” SPECIFICATIONS 
Level ”B" provides the S-100 signals plus buffers/ 
drivers to support up to six S-100 bus boards, and in- 
cludes: address decoding for onboard 4k RAM expan- 
sion selectable in 4k blocks . . . address decoding for 
onboard 8k EPROM expansion selectable in 8k blocks 
. . . address and data bus drivers for onboard expansion 
. . . wait state generator (jumper selectable), to allow the 
use of slower memories . . . two separate 5 volt regula- 
tors. 

LEVEL “C” SPECIFICATIONS 

Level “C” expands Explorer/85’s motherboard with a 
card cage, allowing you to plug up to six S-100 cards 
directly into the motherboard. Both cage and card are 
neatly contained inside Explorer’s deluxe steel 
cabinet. Level ”C" includes a sheet metal superstruc- 
ture. a 5-card, gold plated S-100 extension PC board 
that plugs into the motherboard. Just add required 
number of S-100 connectors. 


Explorer/85 
With Level "C” 
Card Cage. 


LEVEL “D” SPECIFICATIONS 

Level ”D” provides 4k of RAM, power supply regula- 
tion. filtering decoupling components and sockets to 
expand your Explorer/85 memory to 4k (plus the origi- 



nal 256 bytes located in the 8155A). The static RAM 
can be located anywhere from to EFFF in 4k 
blocks. 


LEVEL “E” SPECIFICATIONS 

Level “E” adds sockets for 8k of EPROM to use the 
popular Intel 2716 or the TI 2516. It includes all sockets, 
power supply regulator, heat sink, filtering and decou- 
pling components. Sockets may also be used for 2k x 8 
RAM IC’s (allowing for up to 12k of onboard RAM). 
DISK DRIVE SPECIFICATIONS 

• 8" CONTROL DATA CORP. • Data capacity: 401.016 bytes 


(SD). 802.032 bytes (DD). 
unformatted. 

• Access time; 25ms (one 
track). 


professional drive. 

• LSI controller. 

• Write protect. 

• Single or double density. 

DISK CONTROLLER/ I/O BOARD 
SPECIFICATIONS 

• Controls up to four 8" drives. 

• 1771 A LSI (SD) floppy disk 
controller. 

• Onboard data separator 
(IBM compatible). 

• 2 Serial I/O ports 

• Autoboot to disk system 
when system reset. 


2716 PROM socket included 
for use in custom 
applications. 

Onboard crystal controlled. 
Onboard I/O baud rate 
generators to 9600 baud. 
Double-sided PC board 
(glass epoxy.) 


DISK DRIVE CABINET/POWER SUPPLY 

• Deluxe steel cabinet with individual power supply for max- 
imum reliability and stability. 


ORDER A COORDINATED 
EXPLORER/85 APPLICATIONS 
PAR! 

Beginner’s Pak (Save $26.00!) — Buy Level "A” (Ter- 
minal Version) with Monitor Source Listing and AP-1 
5-amp Power Supply: (regular price $199.95), now at 
SPECIAL PRICE: $169.95 plus post. & insur. 
Experimenter’s Pak II (Save $53.40!) — Buy Level 
“A" (Hex Keypad/Display Version) with Hex 
Keypad/Display. Intel 8085 User Manual, Level "A” 
Hex Monitor Source Listing, and AP-1 5-amp Power 
Supply: (regular price $279.35). all at SPECIAL 
PRICE: $219.95 plus post. & insur. 

Special Microsoft BASIC Pak (Save $103.00!) — In- 
cludes Level ’’A” (Terminal Version). Level “B". 
Level "D" (4k RAM). Level “E”. 8k Microsoft in 
ROM. Intel 8085 User Manual. Level "A" Monitor 
Source Listing, and AP-1 5-amp Power Supply: (regu- 
lar price $439.70), now yours at SPECIAL PRICE: 
$329.95 plus post. & insur. 

ADD A TERMINAL WITH CABINET, 
GET A FREE RF MODULATOR: Save 
over $114 at this SPECIAL PRICE: $499.95 
plus post. & insur. 

Special 8" Disk Edition Explorer/85 (Save over $104!) 

— Includes disk-version Level ’’A”. Level ’’B’’. two 
S-100 connectors and brackets, disk controller, 64k 
RAM, AP-1 5-amp power supply, Explorer/85 deluxe 
steel cabinet, cabinet fan, 8" SD/DD disk drive from 
famous CONTROL DATA CORP. (not a hobby 
brand!), drive cabinet with power supply, and drive 
cable set-up for two drives. This package includes 
everything but terminal and printers (see coupon for 
them). Regular price $1630.30. all yours in kit at 
SPECIAL PRICE: $1499.95 plus post. & insur. Wired 
and tested, only $1799.95. 

Special! Complete Business Software Pak (Save 
$625.00!) — Includes CP/M 2.0. Microsoft BASIC. 
General Ledger. Accounts Receivable. Accounts 
Payable. Payroll Package: (regular price $1325). yours 
now at SPECIAL PRICE: $699.95. 


Dept. K10 Please send the items checked below: 

□ Explorer 85 Level “A” Idt (Terminal Version). . $129.95 plus 
$3 post. & insur. 

□ Explorer/85 Level M A” Idt ( Hex Keypad/Display Version) . . 
$129.95 plus $3 post. & insur. 

□ 8k Microsoft BASIC on cassette tape S64.95 postpaid. 

C 8k Microsoft BASIC in ROM kit (requires Levels ”B ”. “D” and 
"E") . $99.95 plus $2 post. & insur. 

□ Level “B" (S- 100) kit $49.95 plus $2 post. & insur. 

□ Level “C” (S-100 6-card expander) kit $39.95 plus $2 post. 
& insur. 

□ Level "IT (4k RAM) Idt $69.95 plus S2 post. & insur. 

□ Level “E” (EPROM/ ROM) kit $5.95 plus 50C p&h. 

□ Deluxe Steel Cabinet for Explorer/85 $49.95 plus $3 post. 
& insur. 

□ Fan For Cabinet . . $15.00 plus $1.50 post. & insur 

□ ASCII Keyboard/ Computer Terminal Idt: features a full 128 

character set. u&l case: full cursor control: 75 ohm video 
output: convertible to baudot output: selectable baud rate. 
RS232-C or 20 ma. I/O. 32 or 64 character by 16 line formats, 
and can be used with either a CRT monitor or a TV set (if you 
have an RF modulator) . SI49.95 plus $3.00 post. & insur. 

□ DeLuxe Steel Cabinet for ASCII keyboard/terminal . . 
$19.95 plus $2.50 post. & insur. 

□ New! Terminal/ Monitor: (See photo) Same features as above, 
except 12" monitor with keyboard and terminal is in deluxe 
single cabinet: kit $399.95 plus $7 post. & insur. 

□ Hazeltine terminals: Our prices t<xi low to quote — CALL US 
C Lear-SIgler terminals/printers: Our prices i<kj low to quote: 

CALL US 

□ Hex Keypad/ Display Idt $69.95 plus $2 post. & insur. 


□ AP-1 Power Supply Kit ±8V @5 amps) in deluxe steel cabinet 

$39.95 plus $2 post & insur. 

□ Gold Plated S- 100 Bus Connectors $4.85 each, postpaid 

□ RF Modulator kit (allows you to use your TV set as a monitor) 
...$895 postpaid. 

□ 16k RAM Idt (S-100 board expands to 64k) $199.95 plus $2 

post. & insur. 

□ 32k RAM Idt $299.95 plus $2 post. & insur. 

□ 48k RAM kit $399.95 plus $2 post. & insur 

□ 64k RAM Idt $499.95 plus $2 post. & insur 

□ 16k RAM Expansion Idt (to expand any of the above in 16k 

blocks up to 64k) . $99.95 plus $2 post. & insur. each. 

□ Intel 8085 cpu Users’ Manual $7.50 postpaid 

□ 12" Video Monitor (10MHz bandwidth) . $139.95 plus $5 

post. & insur. 

□ Beginner’s Pak (see above) $169.95 plus $4 post. & insur. 

□ Experimenter’s Pak (see above) . . $219.95 plus $6 post. & 
insur. 

□ Special Microsoft BASIC Pak Without Terminal (see above) . 
$329.95 plus $7 post. & insur 

□ Same as above, plus ASCII Keyboard Terminal With Cabinet, 

Get Free RF Modulator (see above) . $499.95 plus $10 post. 

& insur. 

□ Special 8" Disk Edition Explorer/85 (see above) . $1496.95 

plus $26 post. & insur. 

□ Wired & Tfested SI 799.95 plus $26 post. & insur. 

□ Extra 8" CDC Floppy Drives $499.95 plus $12 post & iasur. 
U Cabinet & Power Supply For Drive $69.95 plus $3 post. ft 

insur. 

□ Drive Cable Set-up For TWo Drives $25 plus $1.50 post. & 
insur. 


H Disk Controller Board With 1/0 Ports $199.95 plus $2 post. 

& insur. 

Cl Special: Complete Business Software Pak (see above) 
$699.96 postpaid. 

SOLD SEPARATELY: 

□ CP/M 1.4 $100 postpaid. 

□ CP/M 2.0 $l50poslpaid. 

□ Microsoft BASIC $325 postpaid. 

□ Intel 8065 cpu User Manual $7 .50 postpaid. 

□ Level “A” Monitor Source Listing $25 postpaid. 

Continental U.S.A. Credit Card Buyers Outside Connecticut 

CALL TOLL FREE: 800-243-7428 m 

To Order From Connecticut Or For Technical 

Assistance, call (203) 354-9375 ~ 

Total Enclosed (Conn res. add sales lax) $ 

Paid By: 

D Personal Check □ Cashier's Check/Money Order 

□ VISA □ Master Charge (Bank No ) 

Acct. No. Exp. Date 

Signature 

Print 

Name 

Address 

City 

State Zip 

NETRONICS Research & Development Ltd. 
ISA 333 Litchfield Road, New Milford, CT 06776 



iS Reader Service index — page 241 


Microcomputing, October 1980 231 


HOBBY WORLD 


ELECTRONICS, INC. 

Call Toll-Free: USA (800) 423-5387 in California: (800) 382-3651 


Local & Outside USA: (213) 886-9200 


EMAKO 22 BM 

fes y 

1 


MICROPRINTER H\r\ 




A dependable, low cost addition to B | 

wrvur rnmnutor cuctom fpatnrinn a T v.V-'-ll i 

PI 1 



9x7 dot matrix character format, bi- / 




directional printing at 125 CPS, and 
sprocket feed paper mechanism. Line i 
length is selectable at 40, 80. or 132 1 

Mt 


loaded from the bottom or rear. vf , 




/ 


asynchronous serial interfacing. cat No. Description Price 

wt 22 lbs. 2455 Parallel interface $834.75 

2456 RS-232C Serial interface $894.00 


SSM OBI 

vector Jump & 

Prototyping 
Card 

Plug compatible for s-100 bus 
systems, features full 16 bit vector 
jump address with dip selection of 
8080 or Z80. Can be set to jump on 
Power-on-clear, reset, or both. cat No 1429 OBI kit $41.95 

Prototyping areas on the card for ten cat No 1430 OBI A&T $67.95 

16-pin ICs, three 24-28 pin ICs, and cat No. 1431 OBI bareboard $24.95 
two spare regulator patterns. 



SSM CB1-A 

8080 CPU Board 



Just add an I/O board and it’s a computer! 256 
bytes of on board RAM, with option for 2K of on 
board PROM, includes a power-on, preset jump 
circuit, and mwrite is available, allowing use 
without a front panel. There’s a parallel input 
port with status, and AlP controlled addressing: 
or PROM in 2K blocks increments; RAM in 256 
byte increments; input port for addresses 0-31 in 
decimal. <iiC75 l/if 

Cat NO. 1403 CBI-AKIt ? ■ >9 IVI V 
Cat NO. 1 441 cbi -A Bareboard $27.95 


CCS 32K static 
RAM Board 



uses 2114, 250ns fully static ram s, 
Bank selectable in 8K blocks. 
Enable/Disable on power up or Reset. 
Compatible with North Star, Alpha 
Micro, Cromeco, etc. Also front panel 
compatible, addressable in 8K blocks. 
Selectable wait state, wt. 1 lb. 

Cat NO. 2644 A&T 


$649 


CCS 

Z-80 CPU Boai 



An all new z-80 CPU board loaded with such 
great features as S-100/Altair/Imsai compatibility, 
Power-on jump to any Memory address, 
selectable z-80 monitor ROM, selectable Mi wait 
states, full handshake, auto band (2 baud-56K 
baud) selection, selectable port address, separate 
baud rate oscillator and on board RS-232 100% 
disable option serial port. This board also boasts 
front panel support compatiblity, Z-80 NMI 
capability, phantom line capability, z-80 interrupt 
capability and status valid on Data Lines during 
psnc. wt. 3 lbs. PMA 

Cat No. 2646 


CCS 2422 

Disk Controller 


This disk controller is equipped with a soft sector 
format, will support single and double density 
formats, and supports up to four SV*" and/or 8” 
single or double sided drives, it has ROM 
controlled addressing for I/O mapped and/or 
(optional) memory mapped operation, fastseek 
capability for voice-coil type drive, adjustable 
write precompensation, digital phase-locked 
data separator, selectable auto-wait on Data or 
Control port and on-board 2K Byte 
Boot/program ROM (2716K A copy of CP/M 2.2 is 
included, 
cat NO. 2645 


CCS 

64K Dynamic 
RAM Board 

Uses low power 4116 Dynamic RAM’s, 
Bank selectable in 16K blocks, bank 
Enable/ Disable on power-up or reset, 
"fail safe" modes for transparent 
refresh on 8080 or Z-80, 4mhz 
operation, phantom line capability 
and compatible with front panel 
systems. 

Wt. 12 oz. 
cat NO. 2647 A&T 



SSM AIO 

Apple II Serial & 
Parallel interface 



Allows maximum flexibility for interfacing Apple 
II with peripherals (printers, plotters, terminals, 
modems, etc.) Communicates with both serial 
and parallel devices, and can interface with both 
at the same time. Complete with software and 
firmware for serial and parallel communications. 

• Features one 

RS232 serial interface with: 

Three handshaking lines (RTS, CTS, DCD); Nine 
standard baud rates from 110 to 19,200 baud, 
including 134.5 baud for selectrics; additional 
baud selectable through external input; baud 
rates rotary switch selectable, no jumpers 
required; serial communication modes software 
controlled. 

• Two bi-directional 
8-bit parallel ports with: 

Four additional interrupt and handshaking lines; 
interface configuration software controlled, 
includes on-board firmware for controlling serial 
interface and software for driving parallel 
printers. Firmware for parallel interface control 
optional. Serial and parallel interface cable 
assemblies included, includes comprehensive 
manual and application notes. 

cat NO. 1918 AIO Kit $1 35.00 

cat NO. 1919 AIO A&T $175.00 





SSM MB6B 

8K Static RAM Board 



{gast ksoJ bun^l 




~\lniiiiiinnnunii 


iiirnSrftll™ 



8K bytes by 8 bits, fully buffered, compatible 
with 8080, 8085 and Z80. Dip switch addressing of 
independent 4K halves lets the MB6B think like 
two 4K boards, or one 8K board, independent 4K 
addressing allows the flexibility to meet varying 
software memory needs, uses low power 21L02 
ram s, operates at 2 or 4MHZ, and is compatible 
with direct memory access controllers. 


cat no. 

*1400- A 
•1400-B 
1401 -A 
1401-B 
*1402 


Description 
450ns kit 
250ns kit 
450ns A&T 
250ns A&T 
Bareboard 


Price 
$131.75 
§143.95 
§182.50 
§195.00 
§ 22.50 


PROGRAMMA 

Data Base 
Management 5 

An easy method of creating data files 
and storing them in disk memory for 
future use. Allows you to store and 
manipulate data for maximum 
productivity, and modify or 
incorporate your own routines. Uses 
Radio Shack's TRSDOS/ BASIC language, 
cat NO. 2146 

TRS-80L2, 16K >49 


PROGRAMMA 

SUPER 

STARWARS 

You have just come out of 
hyperspace to find you are right in 
front of a squadron of imperial 
fighters --- and your only hope for 
survival is to destroy them before 
they get you! You will be attacked by 
32 fighters as they close in on 

you good luck. Aip 95 

cat NO. 2130 913 

Apple, 32K Cassette, integer 


MICROSOFT 

TRS-80 

Level III BASIC 

Loads with SYSTEM command, yet has 
the power of a hardware 
modification. Offers easier loading, 
keyboard debounce, BASIC access to 
RS232, new commands, and easier, 
more powerful graphics. Eliminates 
volumn sensitivity when loading 
cassettes, shorthand programming 
commands, and long error messages, 
cat no. 1332 

TRS-80 L2, 16K, Cassette 949 



5 %" Diskettes 

VERBATIM 525 SERIES 

__ . Single sided • Double Density 

perfect for commercial and general applications. 


Description 
Soft sector 
10 hole, hard 
16 hole, hard 


Type 

525-01 

525-10 

525-16 


use for 
trs- 80, etc. 

North star, Apple 
Micropolls, etc. 



Cat No 

2330 

2331 

2332 


VERBATIM 577 SERIES 

• certified twice, 77 tracks 

• Single sided, double density 

• Built-in hub protector ring 

• For critical data applications 

Description Type Use for 

Soft sector 577-01 TRS-80 

10 hole, hard 577-10 North Star, Apple 

16 hole, hard 577-16 Micropolls, etc. 


TRS-80 and APPLE 

16K Memory 
Add-on 

Everything you need to upgrade your 
system! includes 4 pages of illustrated 
instructions. Complete with RAM's 
and preprogrammed jumpers. No 
special tools required! wt. 4 oz. 

Cat No Description 
1 1 56 For TRS-80 Keyboard unit 
1156A For TRS-80 Exp. interface 
purchased before 4/1/79 
1156B For TRS-80 Exp. interface 
purchased before 4/1/79 
1156C Apple II C/I/195 

1156D Exldy 


The PIE 2.0 

(Programma improved Editor) 

An outstanding package with features of the 
more expensive word Processing software, 
including: Character/line insert and delete; 
complete cursor mobility; string search forward 
and backward; single; conditional, or global 
search and replace; move and/or copy blocks of 
text; page scrolling, tabs, margins, paragraphing, 
etc. 

The time to create, edit, and complete a one 
page document can be decreased by as much as 
60%, when comparing this system to an ordinary 
typewriter, comes complete with program 
diskette and detailed documentation in an 
attractive simulated leather binder. 

Cat NO. 2562 4 im95 

Apple ll 32K + Disk (3.2), Integer 9 #9 


120 DAY 

QUALITY GUARANTEE 

This guarantee Is your assurance of receiving the 
highest quality products every time you order 
from Hobbyworld. If you are not satisfied with 
the quality of the Item you purchased, simply 
return it to us. All returns must be accompanied 
by a copy of the sales receipt, and a brief 
explanation of the reason for return is 
requested. Guarantee does not Include damage 
to kits from poor assembly practices. Refunds or 
replacements are at our option, software and 
books will be replaced with another copy only. 
Hobbyworld is not responsible for typographical 
errors. 


® 


HOBBYWORLD 

ELECTRONICS, INC. 

Call Toll-Free: USA (800) 423-5387 in California: (800) 382-3651 
Local & Outside USA: (213) 886-9200 



Disk/Diskette Drive 
Head Cleaning Kit 

Diskette drive heads require periodic 
maintenance to assure efficient and error-free 
operation, unlike other peripheral devices, the 
read/write heads on disk drives are extremely 
difficult to clean without partially disassembling 
the unit. But now, with Hobbyworld s disk drive 
head cleaning kit, the user can clean these hard- 
to-reach heads in just minutes! Available for both 
5W and 8 ' drives, single and double sided. 

Comes complete with two cleaning disks, 4 oz. of 
CS-85 cleaning solution, and easy-pour dispenser. 

Wt 12 oz. 

Cat NO. 2499 8" Disk 99 W 

cat NO. 2534 5 Vi” Diskette 


FLYER, FEATURING... 

Page after page of impressive state-of-the-art 
products, included are computers, terminals, 
disk-drives, printers and many more peripherals 
that can add dimension to your personal 
computing, we also stock computerized games 
and toys, application boards, a large selection of 
comprehensive software, electronics parts, 
Integrated circuits, P.C. & soldering accessories 
and much, much more 


HOW TO ORDER 

Minimum Order $15.00. Order by phone, mall, or 
at our retail stores. Pay by check, Mastercharge, 
visa or C.O.D. Please Include expiration date with 
charge card orders. U.S. $$ only, include phone 
number and magazine issue you are ordering 
from. Add $1.25 for C.O.D. and shipping charges 
from rates below. 

Shipping Rates: U.S.A. 

Ground: Add $2.25 for first 2 lbs. and 40c each 
addt'l lb. 

Air: Add $3.25 for first 2 lbs. and 70c each 
addt'l lb. 

Shipping Rates: Foreign 
Ground: Add $3.00 first 2 lbs. and 60c each 
addt'l lb. 

Air: Add $11.25 for first 2 lbs. and $5.00 each 
addt'l lb. 

Prices valid through month of Issue. 

Not responsible for typographical errors. Some 
items subject to prior sale or quantity limits. 120 
Day Guaranteed Satisfaction. 

Exception: Partially assembled kits, abuse or 
misuse. 


19511 BUSINESS CTR. DR. DEPT K10 NORTHRIDCE, Cfl- 9132a 



Power Supplies! Power Supplies! Power Supplies! SOLID STATE!! (5) 

We got ’em! Take your pick . . . 


These units are ideal for micro computers. They have been removed from equipment, checked out and 
guaranteed. 

1— 5 volts @ 8 amps + 12 volts @ 2 amps + 6 volts @ 75 MA. Power supply has a 3-wire line cord and fused. Dimensions: 

IOV 2 ” x5Vi” x 4 'A”. Shipping weight: 16 lbs 37.50 ea. 2/70.00 

2— Model 81 8, 5 volts at 1 5 amps + 12 volts at 4 amps-1 2 volts at 2 amps, (with line cord) 35.00 ea. 2/65.00 

3— -l- 5 volts at 5 amps ± 12 volts at 500 ma. + 6 volts at 25 ms. (line cord included) 32.95 ea. 2/60.00 

4— Elexon, multi output. Input: 120/240 AC, ±10%, 47-63 hz; output: 1) 12V, 1.5A, DC, OVP; 2) 12V, 

1 .5A, D.C., OVP. New, in box with operating instructions 31 .50 

5— Power Design, Model 1210, constant voltage, DC. P.S. input: 105-125 A.C., 55 to 440 hz. Output: 

1-12 volts, 0-10 amps, DC. continuously adjustable output voltage and current limiting 139.00 


COMPUTER GRADE CAPACITORS . . . 


18.000 mfd 10 VDC 
4,400 mfd 20 VDC 

46.000 mfd 20 VDC 
3.000 mfd 25 VDC 


1.25 

1.00 

2.50 

1.00 


11.000 mfd 25 VDC 

35.000 mfd 35 VDC 

10.000 mfd 50 VDC 

22.000 mfd 60 VDC 


1.50 

3.50 

2.50 
3.75 


4.000 mfd 75 VDC 

1.000 mfd 100 VDC 
6,800 mfd 100 VDC 
4,700 mfd 150 VDC 


1.75 
1.00 
3.50 

3.75 


WIRE WRAP BOARDS 


These boards are pre-wired and removed from equipment. Easy to un- 
wrap for setting up your own board, contains mostly 14-pin 1C sockets 
with individual pin connections. Each board has VCC and ground 
planes. 

Smaller board measures 6 V 2 ” x 6 ” and has 40 to 50 sockets. 

Larger board measures 13 V 2 ” x6” and has 75 to 100 sockets. 



Reduced prices 


$7.50 ea. 2/$14.00 
$12.50 ea. 2/$23.00 


DIABLO System Disc Drive 


SERIES 40, MODEL 43 
100 tracks per inch, total capacity of 50 mega- 
bits, w/Model 429 power supply, sector 
counter, 24 sectors, 1 fixed disc, 1 removable 
disc, average access time 38 ms, PPM: 2600, 
dimensions: 10 5/16” high, fits in standard 
rack, equipped with full extension slides, ex- 
cellent used condition. Shipped freight col- 
lect. 



$2495 


HEWLETT PACKARD model 200CD/rack 
mounted AUDIO OSCILLATOR freq:5hz to 
600khz output: 1 60mw $1 65.00 


HEWLETT PACKARD model 400D 
ANALOG VACUUM TUBE VOLTMETER 
freq: lOhz to 4mhz voltmeter range: 1 mv to 
300vac in 12 ranges $85.00 


TRANSFORMERS 

ISOLATION STEP-DOWN TYPE 


Primary: 230/1 15V, 50/60 
CPS, Secondary: 1 1 5 volts 
output 250 VA. 


$ 13.95 

EACH 


IMC MAGNETICS 
SUPER BOXER FANS 


Unused, Model WS2107FL 
-310, 220/240 VAC, .3 
amps, 50/60 hz, 41 1/16” x 
4 11/16” x 1 1/2” 


$ 8.95 


Clock Crystal Oscillators— TTL, Vectron, type CO- 
231T. Crystal freq. 4.9152 mhz. Input voltage 5 VDC 
±. Output: Drives 10 TTL Loads Logic “0”: 0.4V 
max., sink 16ma. Logic “1” 2.4V min source 2 ma. 
(above 50 mhz drives 2 Schottky TTL loads). Tuning 
adjust, with nominal range of ±30 ppm below 25 
mhz and 15 ppm above 25 mhz. R.F.E. 1Va”x 
1 V* ” x Va” $13.95 


SG-132 SWEEP SIGNAL GENF^OR 

FREQ: 15 TO 400 \ \ 

Output: AM & FM: CW * ,u at any fre- 
quency. Crystal omhz or ± 10B. Fre- 
quency acv i oscilloscope for observing 

waveforms. $329 


TRENDLINE PHONES 

Manufactured by I.T.T. 

These units have rotary dials. Colors are: white, black, red, and 
green. They are packaged and have 6 -foot cord and installation 
instructions. Used, but in good operating condition. 

34.50 WALL TYPE 


Minimum order $25.00. Items offered subject to prior sale. FOB, Brockton, Mass. Money order or check w/order. Shipments and 
handling add 5%. Shipments by parcel post or UPS. No CODs. Mass, residents add 5% sales tax. 


WALLEN 


ELECTRONICS CO. INC. Tel: (617) 588-6440-6441 
is 45 108 SAWTELL AVE, BROCKTON, MA. 02402 


ELECTRONIC 
COMPONENTS 
TEST EQUIPMENT 
CONNECTORS- WIRE 


234 Microcomputing, October 1980 




AIM 65 


BY ROCKWELL INTERNATIONAL 





AIM 65 is fully assembled, tested and warranted. With the 
addition of a low cost, readily available power supply, it’s 
ready to start working for you. 

AIM 65 features on-board thermal printer and 
alphanumeric display, and a terminal-style keyboard. It 
has an addressing capability up to 65K bytes, and comes 
with a user-dedicated IK or 4K RAM. Two installed 4K 
ROMS hold a powerful Advanced Interface Monitor 
program, and three spare sockets are included to expand 
on-board ROM or PROM up to 20K bytes. 

An Application Connector provides for attaching a TTY 
and one or two audio cassette recorders, and gives exter- 
nal access to the user-dedicated general purpose I/O lines. 

Also included as standard are a comprehensive AIM 65 
User’s Manual, a handy pocket reference card, an R6500 
Hardware Manual, an R6500 Programming Manual and an 
AIM 65 schematic. 

AIM 65 is packaged on two compact modules. The 
circuit module is 12 inches wide and 10 inches long, the 
keyboard module is 12 inches wide and 4 inches long. 

They are connected by a detachable cable. 

THERMAL PRINTER 

Most desired feature on low-cost microcomputer systems . . . 

• Wide 20-column printout 

• Versatile 5x7 dot matrix format 

• Complete 64-character ASCII alphanumeric format 

• Fast 120 lines per minute 

• Quite thermal operation 

• Proven reliability 

FULL-SIZE ALPHANUMERIC KEYBOARD 

Provides compatibility with system terminals . . . 

• Standard 54 key, terminal-style layout 

• 26 alphabetic characters 

• 10 numeric characters 

• 22 special characters 

• 9 control functions 

• 3 user-defined functions 

TRUE ALPHANUMERIC DISPLAY 

Provides legible and lengthy display . . . 

• 20 characters wide 

• 16-segment characters 

• High contrast monolithic characters 

• Complete 64-character ASCII alphanumeric format 


RNB> ENTERPRIS 

INCORPORATED 


PROVEN R6500 MICROCOMPUTER SYSTEM DEVICES 

Reliable, high performance NMOS technology . . . 

• R6502 Central Processing Unit (CPU), operating at 1 
MHz. Has 65K address capability, 13 addressing modes 
and true index capability. Simple but powerful 56 
instructions. 

• Read/Write Memory, using R2114 Static RAM devices. 
Available in IK byte and 4K byte versions. 

• 8K Monitor Program Memory, using R2332 Static ROM 
devices. Has sockets to accept additional 2332 ROM or 
2532 PROM devices, to expand on-board Program 
memory up to 20K bytes. 

• R6532 RAM-Input/Output-Timer (RIOT) combination 
device. Multipurpose circuit for AIM 65 Monitor functions. 

• Two R6522 Versatile Interface Adapter (VIA) devices, 
which support AIM 65 and user functions. Each VIA has 
two parallel and one serial 8-bit, bidirectional I/O ports, 
two 2-bit peripheral handshake control lines and two 
fully-programmable 16-bit interval timer/event counters. 

BUILT-IN EXPANSION CAPABILITY 

• 44-Pin Application Connector for peripheral add-ons 

• 44-Pin Expansion Connector has full system bus 

• Both connectors are KIM-1 compatible 

TTY AND AUDIO CASSETTE INTERFACES 

Standard interface to low-cost peripherals . . . 

• 20 ma. current loop TTY interface 

• Interface for two audio cassette recorders 

• Two audio cassette formats: ASCII KIM-1 compatible 
and binary, blocked file assembler compatible 

ROM RESIDENT ADVANCED INTERACTIVE MONITOR 

Advanced features found only on larger systems . . . 

• Monitor-generated prompts 

• Single keystroke commands 

• Address independent data entry 

• Debug aids 

• Error messages 

• Option and user interface linkage 

ADVANCED INTERACTIVE MONITOR COMMANDS 

• Major Function Entry 

• Instruction Entry and Disassembly 

• Display/Alter Registers and Memory 

• Manipulate Breakpoints 

• Control Instruction/Trace 

• Control Peripheral Devices 

• Call User-Defined Functions 

• Comprehensive Text Editor 

LOW COST PLUG-IN ROM OPTIONS 

• 4K Assembler— symbolic, two-pass , A 65.010 $ 79.00 

• 8K BASIC Interpreter A65-o2o $ 99.00 

POWER SUPPLY SPECIFICATIONS 

• +5 VDC ± 5% regulated @ 2.0 amps (max) 

• +24 VDC ± 15% unregulated @ 2.5 amps (peak) 

0.5 amps average 


PRICE: $389.00 (IK RAM) $439.00 (4K RAM) 

Plus $4.00 UPS (shipped in U.S. must give street address), 
$10 parcel post to APO’s, FPO’s, Alaska, Hawaii, Canada, 
$25 air mail to all other countries 
AIM 65 USER MANUAL $5.00 plus $1.50 shipping & handling. 

We manufacture a complete line of high quality expansion 
boards. Use reader service card to be added to our mailing 
list, or U.S. residents send $1.00 (International send $3.00 
U.S.) for airmail delivery of our complete catalog. 

We’ve Expanded Again! 

Note our new address. 

EE S W Fairmount Avenue 


✓"52 


Phoenix AZ. 8501 7 
(602)265-7564 









IMew Releases for the TRS-80* 


Mail/List from Galactic Software Ltd. 

A Mailing List for the TRS-80 Model I or Model II 

Instant Software always tries to provide you with the best 
software on the market. Although the Mail/File mailing list 
program is not published by us, it is so good that we want you 
to try it. 

We have two versions of this mailing list. Pkg. 5000RD is for 
the Model I with the 5-inch disk drive and Pkg. 5001 RD is for 
the Model II with the 8-inch disk drive. The programs are 
essentially identical except for the storage media and their 
respective capacities. 

With the 5-inch drive, you can store up to 600 names per 
disk without DOS, or 300 names per disk with DOS. With the 
8-inch drive, you can store up to 2500 names per disk, with or 
without DOS. (If your list is larger than the single disk max- 
imum, it can be distributed over several disks.) 

The program maintains separate alphabetical and ZIP code 
files under constant sort. When you add a name to your list it 
will be inserted into its correct position in the files. You will 
never have to sort your list, it will always be ready to print 
labels. 

The program will record your data in nine fields: two for 
NAME, and one each for ADDRESS, CITY, STATE, ZIP CODE, 
PHONE NUMBER, PHONE EXTENSION, and a five character 
CODE field. When you print labels, you have a choice of three 
different label formats: a three line label, a four line label or a 
user-defined label. In the three line and user-defined label for- 
mats, you may include a message line on your label. 

The best feature of this program is the sort process that 
lets you determine which labels will be printed. You may 
specify either alphabetical or ZIP code order for all or any part 
of your list. For example, you can print labels for everyone on 
your list whose name begins with the letter A, or for all of 
those people who have the same ZIP code. You can even print 
labels for only those people named Jones, who are living in a 
given city or state. (Note: The Model II version can search for 
both first and last names, e.g., John Jones.) Furthermore, you 
can choose to print labels by using any single field (i.e., 
specific cities, states, phone numbers, etc.). You may assign 
specific codes to any name in the CODE field. For example, 
ACT could stand for active accounts, and IN ACT for inactive 
accounts. If you wanted to send a letter to all of your inactive 
accounts, you would specify the CODE INACT, and labels 
would be printed only for your inactive accounts. When you 
print labels, you may specify up to nine different CODES at 
one time. If your data matches any one of the CODES, a label 
will be printed. 

Files created with the Model I version of this program can 
be transferred to the Model II version, when you upgrade your 
hardware. 

Package 5000RD requires the following minimum system: 

1. A TRS-80 Model I Level II with 16K RAM. 

2. An Expansion Interface with 16K RAM (or more). 

3. One (or more) mini-disk drives. 

4. A compatible printer (80 or 132 columns). 

5. TRSDOS version 2.3. 

Order No. 5000RD (Model I version) $99.00 

Package 5001 RD requires the following minimum system: 

1. A TRS-80 Model II with 64K of RAM. 

2. Additional Expansion Unit drives (optional). 

3. Model II TRSDOS version 1.2. 

4. A compatible printer (80 or 132 column). 

Order No. 5001 RD (Model II version) $199.00. 


*A trademark of Tandy Corporation 


Basic Math Program from EMSI 

Although we do not publish this package, it is so out- 
standing that we would be remiss if we didn’t offer it to you, 
our customers. The Basic Math Program is a comprehensive 
math teaching package divided into six sections. It is, also, 
the best educational software that we have seen for teaching 
arithmetic skills. The package was designed and created by a 
certified math teacher with 15 years of programming ex- 
perience. 

The first three programs in the package comprise: Whole 
Number Arithmetic by Teaching Objective. This set includes 
lessons in Addition, Subtraction and Multiplication. (Whole 
Number Division by Teaching Objective will be available 
soon.) The fourth program is Fractions and Mixed Number 
Arithmetic. Logic and Deductive Reasoning is the fifth pro- 
gram in the set. The Metric-English Conversion program 
rounds out the series. 

You, the teacher, can choose a variety of options from the 
MENU, so as to custom-tailor both practice and test sessions. 
The program options include: Number of problems/session, 
Level of problem difficulty, Number of seconds per problem, 
Type of assistance to be offered (digit by digit or retry), Type 
of reward, as well as options specific to the Addition and the 
Subtraction sections. 

This package includes an excellent, 60 page Teacher’s 
Manual that explains how to use all program features - 
even for those people who have no prior experience with a 
computer system. The manual introduces and explains all of 
the teaching objectives in terms of the specific skills to be 
mastered. It contains detailed instructions on how to use the 
computer. (It even explains the proper cassette loading pro- 
cedure in easily understood terms.) The manual goes on to 
show you exactly what material will appear on the computer 
screen, and how to select the program options. It explains 
how to use the Analysis of Session Results feature, which 
shows not only the number of problems/number correct, but 
displays the actual problems given, notes if an incorrect digit 
was entered, whether it was corrected during the session and 
whether the student used the HELP feature. 

The Fractions and Mixed Number Arithmetic program 
shows the student every step of how to solve these problems. 
It waits for the student to enter each answer and — if he/she 
has made an error — provides a review of the process, so that 
the error can be found. It can also be run as a “fraction/mixed 
number calculator”. 

The Deductive Reasoning program is a modified and much 
improved Mastermind-type exercise. It may be played as a 
game, or used to exemplify the rigorous nature of valid in- 
ference. 

The Metric/English Conversion program will convert quan- 
tities (length, area, volume and weight) from Metric to English, 
or English to Metric. It includes all of the most commonly 
used units of measure. 

First there was the revolution of Computer Assisted In- 
struction. Now, there’s the evolution of this extraordinary 
“teacher’s aide”. 

Order No. 5002R $80.00 


TO ORDER: Look for these programs at the dealer nearest 
you (see list of dealers on page 205). If your store doesn’t 
stock Instant Software send your order with payment to: 
Instant Software, Order Dept., Peterborough, N.H. 03458 
(Add $1.00 for handling) or call toll-free 1-800-258-5473 
(VISA, MC and AE accepted). 


Instant Software 


M 


PETERBOROUGH, N.H. 03458 
603-924-7296 


236 Microcomputing, October 1980 


New Releases for the TRS-80' 


Utilities 



We’re proud to present three disassemblers for the TRS-80. For 
speed and simplicity, we recommend The Disassembler. For 
complex disassemblies, especially if you wish to make altera- 
tions, you may prefer one of our Labeling Disassemblers, either 
TLDIS or DLDIS. 

TLDIS & DLDIS 

You’ve bought a super machine-code 
program, but now wonder how it works. 

Maybe you even used a quick PEEK 
routine to glance through it when it was 
in memory. If so, you definitely noticed 
the complete lack of comments in the 
code, making it almost impossible for 
you to decipher and understand it. 

Well, Instant Software’s Labeling 
Disassemblers are the answer to your 
problem. 

TLDIS (Tape-based Labeling Disas- 
sembler) and DLDIS (Disk-based Label- 
ing Disassembler) are three-pass, label- 
assigning disassemblers which assign 
labels (where appropriate) to the 
routines in a machine-language pro- 
gram. Their output is almost identical to 
that of a hand-assembled source code. 

You can send the disassembly to a 
lineprinter (Radio Shack parallel port) for 
either TLDIS or DLDIS. (The difference 
between these utilities is the storage 
mode of the disassembly.) 

TLDIS can send the disassembly to 
cassette tape, DLDIS can send it to disk; 
both send it to the video monitor. The 
stored disassembly from TLDIS may be 
reassembled with Radio Shack’s 
EDTASM(™) — the disassembly from 
DLDIS, with Apparat’s extension of ED- 

TASM(TM). 

Because of the use of labels, it is a 
simple matter to change any object code 
program by disassembling it and then 


The Disassembler 

This is a single-pass, hex-notation 
disassembler that will send its output 
either to tape or to a lineprinter (Radio 
Shack parallel port). The tape output is 
directly compatible with Tandy’s ED- 
TASMCTM) Thus, you can take an object 
code tape, disassemble and output it to 
tape, then use EDTASM(™) to add, 
delete, change and even re-assemble 
your new version. 

In addition, it displays the displace- 
ment and absolute address of any 
relative jumps made by the disassem- 
bled program. It also displays any ASCII 
characters used in a LD or CP opcode. 


Sample output from the Disassembler 


making changes to the resultant source 
code, without losing track of jump/load 
addresses. Labels start with “AAOO” and 
increment up, in even numbered steps 
(AA02, AA04, etc.). The odd numbers 
(AA01, AA03, etc.) are left for you to use 
for the source code during reassembly. 

The printing of the disassembly may 
be temporarily halted by using [SHIFT] 
@ Gust as in BASIC) or it may be ended 
by pressing the [BREAK] key. It also has 
a comments column to display ASCII 
charachters used in a LD or CP opcode. 

Because TLDIS and DLDIS work only 
on in-memory programs, they may be 
relocated in memory to avoid conflict 
with the program you disassemble. 

The next time you need to “climb in- 
side” a machine-code program, take 
DLDIS or TLDIS with you. We promise 
that it will be an easier journey. 

Order No. 0230R (TLDIS) $14.95 
Order No. 0231 RD (DLDIS) $1 9.95 


BYTE 

MACHINE 

LINE 

MNEMONIC 

COMMENTS 


NUM. 

CODE 

NUM. 


COLUMN 


706E 

22057 B 

00053 

LD 

(7B05H),HL 


7071 

183B 

00054 

JR 

$ + 3DH 

70AEH 

7073 

FE52 

00055 

CP 

52H 

= “R” 

7075 

2007 

00056 

JR 

NZ,$ + 09H 

707EH 

7077 

CD8F70 

00057 

CALL 

708FH 



H means the number is HEX 
$ means current location counter. 

Since the Disassembler works only on 
in-memory programs, it has been made 
relocatable so that you may move it 
around in memory to avoid conflict with 
the program you wish to disassemble. 
As an added option, you may also jump 
to memory locations and transfer con- 
trol between Disassembler and other 
utility programs in your computer. 

The Disassembler, use it to examine 
and analyze any machine-code pro- 
gram! 

Order No. 0232R $9.95 


Terminal-80 

The Terminal-80 package lets your 
TRS-80 communicate with the rest of the 
world. These programs give you control 
of the RS-232 port of your Expansion In- 
terface. 

You can connect one or more serial 
terminals to your TRS-80. Your computer 
will accept input from the RS-232 port 
just as if it were entered from the 
keyboard. Thus, you can use your com- 
puter from a remote terminal without 
having to move your equipment. 

The TRS-80 can also be transformed 
into a “dumb” terminal. You can use it in 
a time-sharing situation to talk to “big” 
computers via a modem. All data that 
you type in will go out through the 
RS-232 port and all incoming data will be 


displayed on the screen. 

You can transfer programs over the 
phone lines. Just load a program into the 
TRS-80. The LPRINT/LLIST command 
will transfer the program to a receiving 
computer via the RS-232 port. 

Using the upper/lowercase modifica- 
tion of the TRS-80 is simplified. (You 
must have the modification kit installed 
first or follow the detailed instructions 
included in this package.) Control 
characters in Level II and Disk BASIC 
will be properly displayed and all func- 
tions such as CHR$ will work correctly. 

This package even includes a BASIC 
program to set the baud rate. You won’t 
have to tear apart your Expansion Inter- 
face if you use more than one configura- 
tion. 


There are thousands of TRS-80 com- 
puters in the world. Let’s get together 
and talk to each other— with the Termi- 
nal-80 from Instant Software. 

This package requires the following 
minimum system: 

1. A TRS-80 with 16K of memory. 

2. An Expansion Interface. 

3. An RS-232 Serial Interface (e.g., 
Radio Shack’s No. 26-1145 or the 
equivalent). 

4. An optional upper/lowercase 
modification kit. 

Order No.01 30R (cassette-based) $24.95. 


WRITE FOR OUR NEW CATALOG! 


Instant Software 


" 40 *A trademark of Tandy Corporation 

PETERBOROUGH, N.H. 03458 
603-924-7296 


i/ 0 Reader Service index— page 241 


Microcomputing, October 1980 237 


WAMECO 

THE COMPLETE PC BOARD HOUSE 
EVERYTHING FOR THE S-IOO BUSS 


* FPB-1 FRONT PANEL BOARD FOR 8080A AND Z80 
SYSTEMS IMSAI COMPATIBLE. 

PCBD $56.95 KIT $1 75.00 

* MEM-2 16K RAM 2114’s. ADDRESSABLE IN 4K 
BOUNDARIES. 

PCBD .... $33.95 KIT (LESS RAMS) .... $80.95 

* EPM-2 16/32K ROM USES 2716 OR 2708. ADDRESS- 
ABLE IN 4K BOUNDARIES. 

PCBD .... $33.95 KIT (LESS ROMS) .... $74.95 

* CPU-1 8080A PROCESSOR BOARD WITH VECTOR 
INTERRUPT. 

PCBD $33.95 KIT $124.95 

* IOB-1 I/O BOARD. ONE SERIAL, TWO PARALLEL 

WITH CASSETTE. PCBD $33.95 

* FDC-1 FLOPPY DISC CONTROLLER BOARD USES 

1771. PCBD $45.95 


* QMB-12 13 SLOT MOTHER BOARD. 

PCBD $42.95 KIT $125.95 

* QMB-9 9 SLOT MOTHER BOARD. 

PCBD $35.95 KIT $109.95 

* PTB-1 POWER SUPPLY AND TERMINATOR BOARD. 

PCBD $29.95 KIT $49.95 

* RTC-1 REAL TIME CLOCK BOARD WITH TWO 
INTERRUPTS. 

PCBD $29.95 KIT $79.95 

* MEM-1 8K RAM, USES 2102’s. 

PCBD $33.95 KIT (LESS RAM) $71.95 

* EPM-1 4K 170Z BOARD. 

PCBD .... $29.95 KIT (LESS ROM) $59.95 


FUTURE PRODUCTS: 80 CHARACTER VIDEO BOARD. 

Z-80 CPU BOARD WITH ROM, 8 PARALLEL PORT I/O BOARD 

DEALER INQUIRIES INVITED, UNIVERSITY DISCOUNTS AVAILABLE 

AT YOUR LOCAL DEALER 

MOST PRODUCTS FOR IMMEDIATE SHIPMENT. NO 4-8 WEEK DELAYS REQUIRED FOR OTHERS. 


W7TJC 


/nc. 


WAMECO, INC., P. O. BOX 877 • 455 PLAZA ALHAMBRA • EL GRANADA, CA 94018 • (415) 726-6378 


CALIFORNIA COMPUTER SYSTEMS 

16K RAM BOARD. Fully buffered addressable in 4K 
blocks. IEEE standard for bank addressing 2114’s. 

PCBD $28.95 Kit 450 NSEC ..$249.95 

PT-1 PROTO BOARD. Over 2,600 holes 4" regula- 
tors. All S-100 buss functions labeled, gold fingers. 
PCBD $28.95 

PT-2 PROTO BOARD. Similar to PT-1 except set- 
up to handle solder tail sockets. PCBD ..$28.95 

CCS MAIN FRAME. Kit (S-100) $339.95 

APPLE EXTENDER. Kit $22.95 

APPLE IEEE INSTRUMENTATION INTERFACE 
KIT 7490. Kit $275.00 

ARITHMETIC PROCESSOR FOR APPLE 7811A. 
Kit $350.00 

APPLE ASYNCHRONOUS SERIAL INTERFACE 
7710A. Kit $89.95 

APPLE SYNCHRONOUS SERIAL INTERFACE 

771 2A. Kit $89.95 

ALL OTHER CCS PRODUCTS AVAILABLE 

PB-1 2708 & 2716 Programming Board with pro- 
visions for 4K or 8K EPROM. No external supplies 
required. Textool sockets. Kit $143.00 

CB-1 A 8080 Processor Board. 2K of PROM 256 
BYTE RAM power on/rest Vector Jump Parallel 
port with status. Kit .. $146.00 PCBD $31.95 

VB-3 80x24 VIDEO BOARD. Graphics included. 
4MHZ $379.95 

IO-4 Two serial I/O ports with full handshaking 
20/60 ma current loop: Two parallel I/O ports. 
Kit $168.00 PCBD $31.95 

VB-IC 64 x 16 video board, upper lower case Greek 
composite and parallel video with software, S-100. 

Kit $143.00 

CB-2 Z80 CPU BOARD. Kit $199.95 

AIO APPLE SERIAL/PARALLEL $144.95 

ALL OTHER SSM PRODUCTS AVAILABLE 



[WfnCjjnC' WAMECO INC. 

FDC-1 FLOPPY CONTROLLER BOARD will drive 
shugart, pertek, remic 5" & 8” drives up to 8 drives, 
on board PROM with power boot up, will operate 

with CPM™ (not included). PCBD $43.95 

FPB-1 Front Panel. IMSAI size, hex displays. Byte, 

or instruction single step. PCBD $48.50 

MEM-1A 8K x 8 fully buffered, S-100, uses 2102 

type rams. PCBD $28.95 

QM-12 MOTHER BOARD, 13 slot, terminated, S-100 

board only $39.95 

CPU-1 8080A Processor board S-100 with 8 level 

vector interrupt. PCBD $28.95 

RTC-1 Realtime clock board. Two independent in- 
terrupts. Software programmable. PCBD $25.95 

EPM-1 1702A 4K Eprom card. PCBD $25.95 

EPM-2 2708/2716 16K/32K EPROM CARD. 

PCBD $28.95 

QM-9 MOTHER BOARD. Short Version of QM-12. 

9 Slots. PCBD $33.95 

MEM-2 16K x 8 Fully Buffered 2114 Board. 

PCBD $28.95 

PTB-1 POWER SUPPLY AND TERMINATOR BOARD. 

PCBD $28.95 

IOB-1 SERIAL AND PARALLEL INTERFACE. 

2 parallel, one serial and cassette. 

PCBD $28.95 

2708 $ 9.49 2114L 450 NSEC $5.99 

2716 $35.95 2114L 200 NSEC $6.99 



(415) 726-7593 

P. O. Box 955 • El Granada, CA 94018 

Please send for 1C, Xistor and Computer parts list 


OCT. SPECIAL SALE 
ON PREPAID ORDERS 

(Charge cards not included on this offer) 


RAM SALE 

MEM-2, PCBD $25.95 

MEM-2 -I- PARTS LESS RAM $49.95 

MEM-2 MIKOS #7 450 NSEC $199.95 

MIKOS PARTS ASSORTMENT 
WITH WAMECO AND CYBERCOM PCBDS 
MEM-2 with MIKOS #7 16K ram 

with L2114 450 NSEC $229.95 

MEM-2 with MIKOS -13 16K ram 

with L2114 200 NSEC $249.95 

CPU-1 with MIKOS *2 8080A CPU $99.95 

QM-12 with MIKOS *4 13 slot mother 

board $110.95 

RTC-1 with MIKOS -5 real time clock $65.95 

EMP-1 with MIKOS *10 4K 1702 less 

EPROMS $ 49.95 

EPM-2 with MIKOS *11 16-32K EPROMS 

less EPROMS $65.95 

QM-9 with MIKOS *12 9 slot mother 

board $99.95 

FPB-1 with MIKOS *14 all parts 

for front panel $144.95 


MIKOS PARTS ASSORTMENTS ARE ALL FACTORY MARKED 
FARTS. KITS INCLUDE ALL PARTS LISTED AS REQUIRED 
FOR THE COMPLETE KIT LESS PARTS LISTED. ALL SOCK- 
ETS INCLUDED. 

LARGE SELECTION OF LS TTL AVAILABLE 

PURCHASE $50.00 WORTH OF LS TTL AND GET 
10% CREDIT TOWARD ADDITIONAL PURCHASES. 
PREPAID ORDERS ONLY. 

VISA or MASTERCHARGE. Send account number, interbank num- 
ber, expiration date and sign your order. Approx, postage will 
be added. Check or money order will be sent post paid in U.S. 
If you are not a regular customer, please use charge, cashier's 
check or postal money order. Otherwise there will bo a two- 
week delay for checks to clear. Calif, residents add 6% tax. 
Money back 30-day guarantee. We cannot accept returned IC’s 
that have been soldered to. Prices subject to change without 
notice. $10 minimum order. $1.50 service charge on orders 
less than $10.00. 


238 Microcomputing, October 1980 


Computers, Disk Systems 


SUPERBRAIN 


By INTERTEC 



32K or 64K (Double or Quad Density units 
available). Uses two Z-80 CPU's. Commercial- 
type terminal with 12" monitor. Dual double 
density minifloppies. Over 350 kilobytes of 
storage (twice that with quad density drives). 
Two serial RS232 ports, I/O ports standard. 
Expandable with optional S-100 S-100 inter- 
face. Comes with CP/M™ 2.2 operating sys- 
tem. MiniMicroMart includes BASIC inter- 
preter and can supply a wide range of CP/M 
Development and Application software. 

w/32K Double Density, List $2995 . $2685 

w/64K Double Density, List $3345 $2883 

w/64K Quad Density, List $3995 $3595 

W/64K Quad — MiniMicroMart 

Upgrade Special $3395 

MICROMATION 



computer with dual density 
8" floppies (1 megabyte). Rack or vertical 
mounting. Systems with double-sided drives, 
hard disks, and multi-user (MP/M). 


Z+ 100 64K RAM, Computer, $2495. . $2099 


Z + 120 Includes two 8" disks, $4995 . . . $4199 


"Z" system features new distributed processing 
multi-user concept with one Z-80 per user, with 
Z-80 for MP/M (Master Satellite concept). 

AS LOW AS $11,899! 


SD SYSTEMS 

SDS-100, w/32K RAM, $6995 . . $5945 

SDS-200, List $8995 $7645 



RADIO 

SHACK 

TRS-80™ 

10% OFF! 


INTERSYSTEMS 

formerly ITHACA AUDIO 



DPS-1, List $1795 

LIMITED TIME $1 


The new Series II CPU Board features a 4 MHz 
Z-80A CPU and a full-feature front panel. 20- 
slot actively terminated motherboard, with 25 
amp power supply (50/60 Hz operation, incl. 
68 cfm fan). 

COMPLETE SYSTEM with InterSystem 64K 
RAM, I/O Board w/priority interrupt and 
double density disk controller board. Full 1-year 
warranty. List $3595 

LIMITED TIME $2895* 

Above without disk controller, 

List $3195 LIMITED TIME $2539* 

* Prices good until September 15, 1980. 

HEWLETT-PACKARD 

HP-85 A 

Desk-top computer — Call for Price! 



MORROW 

THINKER TOYS® 
DISCUS M26™ 



THINKER TOYS® 
DISK SYSTEMS 


Now includes CP/M® 2.2 

Discus 2D, List $1199. . ...$1019 


Discus 2D, dual-drive. List $1994 $1694 

Discus 2 + 2, Assem., List $1549 $1319 

Dual Discus 2 + 2, Assem., $2748 $2335 

All Morrow systems now include CP/M® 2. 2 

✓*226 


NORTH STAR 
DOUBLE DENSITY 
CONTROLLER BOARDS 


Kit, List $399 

OUR PRICE 

Assembled and Tested, List $499 $399 



In Stock — First Time in 2 Years! 


FANTASTIC SAVINGS 
on a "QUAD" DENSITY 
HORIZON UPGRADE 


North Star Double Density Controller Board 
(see above) and a quad density MPI-52 (fea- 
tures superior disk handling and door mechan- 
ism. 


MDS-H-MQ/K Kit form . 

List $999 OUR PRICE $699 


MDS-H-MQ/A Assembled form, List $1099 

$759 

Shipping and insurance: Add $6. 


NORTH STAR MDS-A 
Double Density Mini 
Floppy Disk System 

Double Density, Kit 

List $799 OUR PRICE $669 


Assembled and Tested $719 

Quad Version, Kit, List $836 

Assembled, List $1099 $896 


Above MDS-A units do not include cabinet or 
power supply. 

Shipping and Insurance: Add $7.50. 


Super Special! 

North Star 
Controller Board, 

Drive, Cabinet, A^AQ 
and Power Supply Y # ww 

Complete system similar to above but also 
includes a cabinet and an assembled /tested 
power supply for the drive (silver finish). Your 
choice of Shugart SA-400 or MPI-51 Double 
Density Drive or MPI-52 quad density drive 
(MPI drives feature improved door and disk 
handling mechanism). 


w/Controller Bd. kit, SA-400 $709 

w/Controller Bd. kit, MPI-51 $709 

w/Controller Bd. kit, MPI-52 $809 

w/Assembled Bd. and SA-400 $769 

w/Assembled Bd. and MPI-51 $769 

w/ Assembled Bd. and MPI-52 $869 

Shipping and Insurance: Add $6. 

For converting existing Horizon 2 to quad, 

order additional MPI-52 

MPI-52 Quad Density Drive $379 


Turn Page 






Terminals and Printers! 


TELEVIDEO TVI-912C 


SOROC 


TI-810 



Upper and lower case, 15 baud rates: 75 to 
19,000 baud, dual intensity, 24 x 80 character 
display, 12 x 10 resolution. Numeric pad. Pro- 
grammable reversfole video, auxiliary port, 
self-test mode, protect mode, block mode, 
tabbing, addressable cursor. Microprocessor 
controlled, programmable underline, line and 
character insert /delete. "C" version features 
typewriter-style keyboard. List $950 

OUR PRICE $789 

920C (with 1 1 function keys, 6 edit keys and 
2 transmission mode keys, List $1030 

ONLY $849 


Intertec 

EMULATOR 

Software compatible with a Soroc IQ-120, 
Hazeltine 1500, ADM-3A or DEC VT-52. Fea- 
tures block mode transmission and printer port; 
12" anti-glare screen; 18-key numeric keypad; 
full cursor control. List $895 , 

OUR PRICE $729 



Intertec INTERTUBE II 

List $995 ONLY $799 

12" display, 24 x 80 format, 18-key numeric 
keypad, 128 upper/lower case ASCII charac- 
ters. Reverse video, blinking, complete cursor 
addressing and control. Special user-defined 
control function keys, protected and unpro- 
tected fields. Line insert/delete and character 
insert/delete editing, eleven special line draw- 
ing symbols. 



IQ-120 

List $995 

SPECIAL 


IQ-140 List $1495 

SPECIAL $1149 




TI-810 Basic Unit, $1895 . ONLY $1695 
TI-810 w/full ASCII (Lowercase), vertical 
forms control, and compressed print . $1895 
TI-745 Complete printing terminal 
with acoustic coupler. List $1695 .... $1399 


HAZELTINE 



1500 

ONLY 

$879 


1410 w/numeric keypad. List $900 $749 

1420 w/lower case and numeric pad 849 

1510, List $1395 1089 

1520, List $1650 1389 


PAPER TIGER" 

a i 



IDS-440 Paper Tiger, List $995 . $895 

w/graphics option, incl. buffer, $1194 . . $989 
TRS-80 cable 45 


BANTAM 550 


From Perkin-Elmer 



ONLY 


$799 


with 

anti-glare 

CRT 

ONLY $829 


CENTRONICS 

PRINTERS 

NEW 730, parallel, friction, tractor . . . $679 

NEW 737 parallel, friction, tractor $849 

779-2 w/tractor (same as TRS-80 Line 
Printer I), List $1350 1049 

702 120 cps, bi-direct., tractor, VFU 1995 

703 185 cps, bi-direct., tractor, VFU .... 2395 

704 RS232 serial version of 703, $2350 . . $1995 



Terminal/Keyboard as well as 
RO Printer Only models available. 

CALL FOR PRICES! 


OKIDATA 

Microline 80 only $649 


Tractor Feed Option $99 

Serial interface $89 

AXIOM IMP I $699 

COMPRINT 912 w/parallel interf. $559 
912 w/serial interface. List $699 $589 

MICROTEK, List $750 $675 

ANADEX 80-Col. Dot Matrix. . , ... $849 


Above prices reflect a 2% cash discount (order prepaid prior to shipment). Add 2% to prices for credit 
card orders, C.O.D.'s, etc. Prices are f.o.b. shipping point. Prices are subject to change and offers 
subject to withdrawal without notice. WRITE FOR FREE CATALOG. 


MiniMicroMart, Inc; 

1618 James Street, Syracuse NY 13203 (315) 422-4467 TWX 710-541 0431 






kilobaud 


Peterborough NH 03458 

MICROCOMPUTING™ L 

1ST OF ADVERTISERS 


Reader Service Number 

Page 

Reader Service Number 

Page 

Reader Service Number 

Page 

91 


119 

33 


200 

303 

Personal Computer Systems 

138 

109 


79 

209 


130 

112 

Personal Micro Computers, Inc 

187 

96 

AEI 

206 

264 


83 

11 

Programma International 

139 

497 


24 

128 

Innovative Technolonv 

184 

202 

Progressive Computing 

130 

249 


94 

40 

Instant Software 15. 21. 166. 167. 236. 237 

245 

Purser Magazine 

48 

56 


71 

77 

Integrand Research Corp 

198 

137 

Quant Systems 

156 

476 

Anadex, Inc 

23 

138 

Integrated Service Systems, Inc 

108 

295 

Quasar Data Products 

65 

319 


155 

475 


22 

44 

Quest Electronics 

225 

495 

APF Electronics, Inc 

24 

235 


43 

46 

R&R Marketing 

190 

349 

Apparat, Inc 

123 

225 

Intertec Data Systems 

3 

485 

Racet Computes 

26 

314 

Apple-jack 

201 

279 

Island Cybernetics 

190 

101 

Racet Computes 

207 


Archabold Electronics 

205 

92 

J.P.C. Products 

39 

482 

Radio Shack 

22 

220 

Aristo/Polks 

146 

41 

Jameco Electronics 

.228, 229 


Radio Shack 

105 

237 

Atec Systems 

48 

180 

J.E.S. Graphics 

146 

• 

Rainbow 

189 

192 


. .184 

164 

Jini Microsystems 

206 

496 

Rainbow Computing, Inc 

26 

193 

Aurora Software 

150 

247 

Joe Computer 

179 

491 

Rainbow Computing, Inc 

24 

96 


205 

99 

John Bell Engineering 

181 

142 

Random Access, Inc 

191 

55 


25 

222 

Kalglo Electronics 

71 

117 

Realty Software Company 

58 

159 

Beta Computer Devices 

58 


Kilobaud Microcomputing 


52 

RNB Enterprises 

235 

110 

CFR Assoc 

201 


71, 99, 109, 201, 210, 215, 216-219 

20 

Robb Report 

74 

5 

CMS Software Systems 

81 

124 

Krell Software 

140 

102 

Robertson Electronics 

58 

256 

CPU Shop ' 

69 

198 

LNW Research 

189 

74 

Rondure Company 

91 

79 

C & S Electronics Mart, Ltd 

173 

312 

Lake City Technical Products 

156 

321 

SS-50 Computing. 

83 

148 

California Computer Systems 

28, 29 

59 

Leedex 

149 

281 

Scelbi Publications 

116 

259 

Edward Carlson 

.80 


Lifeboat Associates 

10, 11 

213 

Scitek 

130 

58 

Checks to go 

48 

219 

MTI 

146 

208 

Service Technologies Inc 

80 

28 

Cleveland Consumer Computers 

54, 55 

207 

Macrotronics 

130 

67 

Sirius Systems 

135 

94 

Compleat Systems 

198 

499 

Manhattan Software, Inc 

26 

132 

68 Micro Journal 

150 

90 

CompuCover 

118 

479 

Matchless Systems 

23 

66 

Skyles Flectric Work*? 

206 

43 

Compumart 

222, 223 


Mediamix 

71 

205 

Slectronics 

191 

147 


127' 

129 

Med Systems 

47 

231 

Small Systems Software 

95 

32 


97 

492 

Mendocino Software 

24 

146 

Software Central 

156 

97 

Computer Corner of NJ 

213 

108 

Micro Architect 

48 

302 

Software Dev. & Training Inc 

94 

18 

Computer Design Labs 

153 

488 

Micro Architect 


322 

Software Mart.. 

100 101 

152 


141 

248 

Micro Business World 

211 

294 

Software Review 

80 

133 

Computer Information Exchange, Inc.... 

189 

216 

The Micro Clinic 

130 

229 

The Software Trader 

184 

115 

Computer Instant Ads, Assoc 

206 

167 

Micro Computer Industries 

201 

306 

Spectrum Software 

7Q 

80 

Computer Services 

86 

126 

Micro Discount Service 

35, 70 

288 

The Stocking Source 

30 

36 

Computer Shopper 

195 

100 

Micro Management Systems 

171 

162 

Structured Program Designers 

207 

105 

The Computer Stop 

38 

176 

Micro Product Unlimited 

70 

179 

Studio Magnetics Qo Inc 

94 

283 

The Computer Stop 

39 

280 

Micro Technical Products 

115 

152 

Sun Technology 

88 

119 

Computer Textile 

200 

344 

Microcomputer Services Corp 

215 

25 

Tab Books 

77 

26 

Computers Unlimited 

48 

30 

Microcomputer Technology Inc 

123 

189 

Tab Sales Company 

141 

227 

Computers Wholesale 

188 

260 

The Microcomputer Warehouse 

70 

139 

Tecmar, Inc 

173 

6 

Computronics 

161 

487 

MicroDaSys 

24 

118 

Telecompute Integrated Systems 

58 

297 

Concord Computer Components 

230 

68 

Micromail 

177, 179 

328 

Texas Computer Systems 

215 

494 

Condor Computer Corporation 

23 

277 

Micromint, Inc 

49 

65 

Tora Systems 1 imited 

200 

271 

Coosol Inc 

172 

253 

Micron, Inc 

186 

313 

Total Information Services 

134 

292 

Coosol, Inc 

38 

123 

Microsette Co 

58 

95 

Total Information Services 

134 

141 

Custom Electronics, Inc 

70 

86 

Mid East Micro 

155 

171 

MaxUleAdv &Mkt 

152 


Cybernetics, Inc 

191 


Midwest Scientific Instruments 

cm 

325 

Urban Aggregates Inc 

58 

136 

DAR Sales 

150 

* 

Mikos 

238 

64 

VR Data Corp 

131 

* 

Data Analysis Systems 

80 

255 

Miller Microcomputer Services 

46 

158 

Vandata 

78 

* 

Delta Systems 

85 

304 

Mini Micro Mart 

147 

45 

Wallen Electronics 

234 

73 

Digital Graphic Systems 

160 

226 

Mini Micro Mart 

239 


Wameco Inc 

238 

61 

Digital Marketing 

44 

50 

Mini Micro Mart 

240 

163 

Wintek Corp 

80 

38 

Digital Marketing 

163 

238 

Mini Micro Mart 

49 

122 

World Wide Flectronics 

70 


Digital Research Computers 

226, 227 

24 

Money Disk 

190 

284 

Word Wizards 


* 

Digital Research Parts 

164 

477 

Mountain Computer, Inc 

23 

337 

X & Y Enterprises 

108 

199 

Discount Computer Products.. 

130 133 

37 

Mullen Computer Products 

145 


Xymec 

199 

34 

Dr. Daley 

.’...87 

81 

Multi Business Computer Systems 

134 

493 

Zapata Microsystems 

24 

489 

Duxbury Systems 

23 

* 

Mumford Micro Systems 

140 




87 

Dwo Quong Fok Lok Sow 

59 

333 

Myron Coy 

108 




83 

Ecosoft 

140 


National Computer Shows 

45 




82 

Ecosoft 

38 

* 

Netronics R & D Ltd 70, 80, 125, 151, 231 




156 

Educational Software Professionals 

2m 

291 

New England Business Service Inc 

213 




60 

Eighty Microcomputing 

213 

265 

New Technologies Co 

80 





Electravalue Industrial 

133 


NRI Schools 

165 




345 

Electrolabs ... . 

156 

103 

OEM Systems & Components 

157 

*This advertiser nrefers to be contacted directlv 

93 

Electronic Specialists 

205 

130 

Olensky Bros. Inc 

62 




47 

Electronic Systems 

220, 221 

498 

OK Machine & Tool Corp 

20 




480 

Emtrol Systems, Inc 

20 

54 

OK Machine & Tool Corp 

4 




254 

Erickson Communications 

183 

27 

OK Machine & Tool Corp 

121 




57 

Exatron 

83 

89 

Omega Sales Co 

141 




7 

Exatron 

110, 111 

140 

Omnitek Systems 

71 




70 

FMG Corp 

63 

29 

Optimal Technology, Inc 

134 




169 

Fair Radio Sales 

152 

310 

Orange Micro 

129 




75 

G W Computers Ltd 

68 

329 

Orion Software 

35 




301 

Galactic Software Ltd 

207 

106 

PAIA 

155 




22 

Gimix Inc 

190 242 

240 

PCD Systems 

98 




481 

Gimix, Inc 

22 

19 

Paccom 

155 




42 

God bout 

224 

246 

Pacific Exchanges 

70 




84 

Mark Gordon Computers 

126 

274 

Pacific Exchanges 

86 




239 

Mark Gordon Computers 

124 

71 

Pan American Electronics, A Radio Shack 





236 

Heath Co 

CIV 


Authorized Sales Center 

198 




8 

Heath Co 

115 

48.3 

Panasonic Comnanv 

20 




10 

Hnhhv World Fleotronir.s 

93 2 9.33 

13-16 Pprrnm Data 

mi 





For further information from our advertisers, please use the Reader Service card located on the last page. 



Microcomputing, October 1980 241 






lQQK 

WHAT’S COOKING 

on the FIFTY BUS 

32K STATIC RAM BOARDS 

Designed for use with: 

★ Existing SS50 Systems ★ SS50C Extended Address Systems 

• Assembled 

• Burned In 

• Tested 

16K... $328.12 
24K. . .$438.14 
32K... $548.15 

16K and 24K Versions are 
socketed for 32K and require 
only additional 2114’s for 
expansion. 


THE CLASSY CHASSIS 


• 25 amp (5V) ferro- resonant constant voltage 
power supply, 

1 Heavy weight aluminum cabinet with 3 position 
key switch, fan, and provisions for two 5” disk 
drives; 

6800/6809 Mother Board, fifteen 50 pin and 
eight DIP-switch addressable 30 pin slots (gold 
plated pins), fully decoded; 

Baud rate generator on I/O section of 
Mother Board. 


I/O BOARDS 


FEATURES: 


for the 30 PIN BUS: 


• Decoding for 4 Extended Address Lines (allows 
memory decoding up to 1 megabyte) 

• DIP-switch to set extended addressing or disable it 

• 4 separate 8K blocks, addressable to any 8K 
boundary by DIP-switch 

• Each 8K block may be individually disabled 


• Write protect either of two 16K sections 

• Low power consumption — uses 2114L low 
power RAMS 

• Fully Socketed 

• Gold Bus Connectors 

• Guaranteed 2MHz operation 


1 Port Serial $ 88.41 

(RS 232 or 20MA, current loop) 

2 Port RS 232 Serial 128.43 

2 Port Parallel 88.42 


lor the 50 PIN BUS: 


AND N0W...GIMIX OFFERS YOU A 
Choice of 6800 or 6809 CPU CARDS 

You can order your system to fit your needs or select one of the below featured systems. 
Please contact the factory for further information and availability. 

Add as much memory as you need using GIMIX Static RAM Cards for the utmost in reliability. 


32K 6800 SYSTEM $1,694.59 

Includes: Chassis, 6800 CPU, 32K RAM BOARD, I/O card 

32K 6809 SYSTEM $1,844.69 

Includes: Chassis, 6809 CPU, 32K RAM BOARD, I/O card 

32K 6809 PLUS SYSTEM $1 ,994.79 


Includes: Chassis, 32K RAM BOARD, I/O Card, and features our 6809 PLUS CPU Card with the Time of Day 
Clock option with battery back-up installed, as well as the 6840 Timer Package that provides 3 independent 
16 bit counters. 


8 Port RS 232 Serial 288.40 

8 Port RS 232 Serial 318.46 

with on board Baud Rate generator. 

8 Port Parallel 198.45 


BOTH 6809 SYSTEMS 
FEATURE OUR 
NEW TERMINAL BASED 
GMXBUG 09 SYSTEM MONITOR 

GMXBUG 09 includes advanced debugging 
tools, utility, and memory manipulation 
routines. 

Both 6809 Systems: 

★ Can be reconfigured to allow use of other 
system monitors (OS-9 and SBUG-E) 

★ Include IK of Scratchpad RAM on the CPU 


This system also allows the following options to be added at additional cost: 

• Battery back-up of the IK RAM by substituting CMOS parts. 

• A 9511 or 9512 Arithmetic Processor. 

• GIMIX or SWTP Dynamic Address Translators. 


★ Allow optional software switching of system 
monitors. 

2MHz 6809’s at slight additional cost when they 
become available. 


EXPORT NOTES: 

For 50Hz 230V C.V. POWER SUPPLY Add $30.00 

80 x 24 VIDEO BOARDS — Specify Format (No Added Charge) 

On Orders under $250.00 for a Single Board, or Chips, please Add $30.00 Handling and we will ship Air Mail Prepaid. 
On all other orders we will ship via Emery Air Freight Collect, and we will charge no handling. All orders must be 
prepaid in U.S. Funds. Please note that foreign checks have been taking about eight weeks for collection, so we 
would advise wiring money or checks drawn on a bank account in the U.S. Our bank is the Continental Illinois 
National Bank of Chicago, Account #73-32033. Visa or Master Charge also accepted. 


FACTORY PRIME STATIC RAMS 
2114L 450 ns . . $5.90 300 ns.. $6.40 200 ns. $6.90 
4044 450 ns . . $5.90 250 ns . . $6.90 

ADD $5.00 HANDLING ON ORDERS UNDER $200.00 
GIMIX® and GHOST® are Registered Trademarks of GIMIX INC. 


Phone, write, or see your dealer for details and 
prices on our broad range of Boards and 
Systems for the SS50/SS50C bus and our AC 
Power Control Products for all computers. 


(r) 

V ^ I iS 22 

Qt 


Eimix 


inc. 


The Company that delivers 

Quality Electronic products since 1975. 

1337 WEST 37th PLACE, CHICAGO, IL 60609 
(31 2) 927-551 0 • TWX 91 0-221 -4055 


242 Microcomputing, October 1980 



Call our new toll free number 
for further information. 

1 - 800 - 255-6638 


The Businessman’s 
Business System 


MSI Business Computer Systems offer flexibility 
and expandability unmatched by any other microcom- 
puter system, large or small. Our SDOS operating 
system is totally device independent and supports up to 
four users. This means that you can start with a single 
user, dual drive, floppy disk system today, and add up 
to 80 megabytes of hard disk with additional worksta- 
tions tomorrow. As your business grows, your MSI 
system grows with you — and your software won’t be- 
come obsolete. 

Perform text processing tasks at one workstation 
while entering sales orders on another. Add a third 
workstation in inventory control and a fourth in ac- 
counting. That’s expandability!!! 

• MSI Inventory Software, with complete Bills of 
Material, provides a complete inventory control and 
management system for manufacturers. 

• Complete manufacturing forecasting, with produc- 
tion pick lists, allows automatic adjustment of compo- 
nent inventory levels. 

• All transactions resulting in any change to the inven- 
tory data base are written to audit trail files listing date, 


time, operator’s name, inventory item, and the changes 
which were made. 

• Sales Order Entry/ Accounts Receivable Software 
displays customer balances and credit standing as new 
orders are entered. Correct product prices and descrip- 
tions are obtained from inventory files if desired. 

• Invoices are generated automatically as orders are 
shipped. Customer statements, with aged accounts re- 
ceivable, are printed on demand. 

• Purchase Order Entry/ Accounts Payable Software 
optionally link to inventory program, in order to easily 
visualize inventory items which are on order. 

• General Ledger programs link to the accounts re- 
ceivable and accounts payable modules for easy up- 
dates and posting. 

• If your business is expanding and you would like to 
know how an MSI Computer System can help you 
make it more profitable, call or write Midwest Scien- 
tific Instruments, 220 W. Cedar, Olathe, Kansas 
66061, (913) 764-3273, TWX 910 749 6403 (MSI 
OLAT), TELEX 42525 (MSI A OLAT). 




The Heath H-14 Printer gives you high-performance 
features at one of the lowest prices anywhere... 



• 5x7 dot matrix and high quality impact printhead 
give you clear, easy-to-read images 

• Standard 96-character ASCII set, UPPER and lower case 

• Operator or software-selectable line widths; 132, 96, 
or 80 characters 

• Compatibility with any computer having RS-232C or 
20 mA current loop serial interface, with handshaking 

• Sprocket paper feed, with adjustable spacing, to keep 
paper moving smoothly 

• Sustainable print speed approximately 30 characters 
per second 

• "Paper jammed" and “paper out" signals to prevent 
loss of data 

• Selectable baud rates from 110 to 4800 

• Convenience of standard fan-fold paper, 2.5 to 9.5 
inches wide 

• Chrome wire rack to keep paper neat 


Visit your Heathkit 
Service Center 


H-14 Printers are on display 
at the 61 Heathkit Electronic 
Centers throughout the U.8. 
and Canada. See your telephone 
white pages for the location 
nearest you. 

In the U.S. Heathkit Electronic 
Cenfers are units of Veritechnology 
Electronics Corporation. 


*Inkit form, FOB Benton Harbor, MI. Also available 
completely assembled at $895.00, FOB Benton Harbor. 
Prices subject to change without notice. 


The H-14's remarkable price includes connecting cables, 
paper rack, paper, and ribbon — so you're all ready to 
run. And service for the H-14 is available at 61 Heathkit 
Electronic Centers in the U.S. or Canada. 

Check out the microprocessor-based H-14 Printer today, 
in kit form or factory assembled. You'll find complete 
details in the newest, FREE Heathkit Catalog. Send for 
yours today, or pick one up at the nearest Heathkit 
Electronic Center. Dealer inquiries on assembled 
units are invited, too. 


Complete service, so you’re 
never left out in the cold 


Heatli 

Computer Systems 

Send for ^236 
FREE Catalog 

Write to: Heath Company, 
Dept. 351-704. 

Benton Harbor, ill 1 49032 


CP-191